Seite 1 von 1

#SCF_SELECTION

Verfasst: 07.08.2006 03:26
von Stromberg
Hi,

ich möchte neue Einträge für ein Editorgadget gern formatieren. Also schicke ich eine Nachricht an das Gadget:

Code: Alles auswählen

Editor_FontColor(#EditorGadget,RGB(200,0,0),"Arial")
AddGadgetItem(#EditorGadget,-1,"Neuer Eintrag")

Code: Alles auswählen

Procedure Editor_FontColor(Gadget, Color.l,FontName.s) 
  format.CHARFORMAT 
  format\cbSize = SizeOf(CHARFORMAT) 
  format\dwMask = #CFM_COLOR
  format\crTextColor = Color 
  format\szFaceName = @FontName
SendMessage_(GadgetID(Gadget),#EM_SETCHARFORMAT,#SCF_SELECTION,@format) 
EndProcedure


Nun tritt folgendes Problem auf. Nicht nur der neue Eintrag erscheint in der gewünschten Farbe - wenn im Editorgadget etwas markiert ist, während ich den neuen Eintrag hinzufüge, so wird auch die Markierung umformatiert.

Wie kann ich das umgehen? Kann ich von vornherein verhindern, dass der Benutzer etwas im Fenster markieren kann? (Readonly ist für das Gadget aktiviert).


Danke!

Verfasst: 07.08.2006 03:38
von ts-soft
Du solltest erst die Zeile hinzufügen, dann selektieren und dann den Stil
ändern.

Verfasst: 07.08.2006 12:29
von Stromberg
Hmm, ja, aber dann habe ich das Problem, dass er eine Änderung der Formatierung erst im übernächsten Eintrag umsetzt.

Verfasst: 07.08.2006 18:08
von ts-soft
Mit AddItemText hab ich sowas noch nie gemacht. Entweder RTF oder
EditorGAdget :mrgreen: