PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » PureBasic для Windows » новые версии РВ не красят текст в редакторе


новые версии РВ не красят текст в редакторе

Сообщений 1 страница 8 из 8

1

два дня мучился, не мог понять почему редактор не красит текст, фон красит
сегодня откатился назад 610, 604, 602, 570
в 570 заработало
в моей проге по константам давно исчезла раскраска, сразу не обратил внимания, сейчас её собрал в 570 и всё заработало
вот такая фигня

из примеров

Код:

EnableExplicit

Define EventID

Procedure SetColor(id,s,e,color)
  Protected cf.charformat2\cbSize = SizeOf(charformat2)
  Protected sel.CHARRANGE
  
  SendMessage_(GadgetID(id),#EM_EXGETSEL,0,sel)
  cf\dwMask       = #CFM_COLOR
  cf\crTextColor  = color             
  SendMessage_(GadgetID(id),#EM_SETSEL,s,e)   
  SendMessage_(GadgetID(id),#EM_SETCHARFORMAT,#SCF_SELECTION,@cf)
  SendMessage_(GadgetID(id),#EM_SETSEL,sel\cpMin,sel\cpMax)
EndProcedure

If OpenWindow(0,0,0,500,400,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  EditorGadget(1,10,10,WindowWidth(0)-20,WindowHeight(0)-20,0)
  SetGadgetText(1,"PureBasicPureBasicPureBasicPureBasicPureBasicPureBasic")
  
  SetColor(1,12,17,$0000FF)
  SetColor(1,22,28,$408000)
  SetColor(1,0,12,$00FF00) 
  
  Repeat
    EventID=WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf

0

2

Может сам редактор другой версии?

0

3

вероятно https://www.purebasic.fr/english/viewto … 37#p599737

0

4

ни чего не понял, работает или нет?

0

5

newJS
там Фред по дефолту сделал стандартный Edit, вместо RTF и это правильно, потому что зачем при небольшом поле ввода встраивается сложный движок RTF. Вот поэтому по дефолту он заменён стандартным Edit, а дополнительным стилем  #TM_RICHTEXT переключается на RTF.

Посмотрел в справке 6.10 нет там упоминания о #TM_RICHTEXT. Понятно что, типа зачем упоминать, сделали стандартный как оно на Linux и MacOS, а виндовые API типа применяйте самостоятельно. Но всё таки в отношении EditorGadget() можно сделать исключение, так как изначально гаджет поддерживал RTF и люди в первую очередь будут смотреть в справке описание этого гаджета.

Отредактировано AZJIO (31.05.2024 07:17:18)

0

6

AZJIO спасибо, я сейчас методом научного тыка это тоже нашёл
SendMessage_(gad, #EM_SETTEXTMODE, #TM_RICHTEXT, 0)
строку нужно вставить до загрузки текста, а текст загружать после, иначе не сработает

как айпишный редактор уговорить пока не понял

0

7

newJS написал(а):

методом научного тыка это тоже нашёл

а useful дал ссылку от самого Фреда на эту же единственную строку, то есть искать то не надо было.

newJS написал(а):

как айпишный редактор уговорить пока не понял

а что там тоже раскраска работала? В этом IPAddressGadget()?

0

8

AZJIO написал(а):

В этом IPAddressGadget()?

не, я про редактор

AZJIO написал(а):

то есть искать то не надо было.

по русски написал, не понял что там написано

0


Вы здесь » PureBasic - форум » PureBasic для Windows » новые версии РВ не красят текст в редакторе