Seite 1 von 2
stringliste fenster
Verfasst: 18.10.2006 18:57
von TomTom
Hallo @ all!
Ich habe ein Problem...
Ich habe ein Fenster 600x600 und möchte ein paar Strings untereinander anzeigen lassen (der String heißt text.s(1000) ) ich finde das richtige Gadget nicht. TextGadget() ist fast richtig, hat aber noch ein Problem. ich möchte eine Liste untereinander anzeigen lassen. Außerdem ist bei TextGadget() das so. Wenn ich einen Text schreibe, der über den Rand hinaus geht, dann blendet der den einfach aus anstatt ihn eine Zeile tiefer zu setzen.
Gibt es noch ein Gadget um das hinzubiegen?
THX!!
Verfasst: 18.10.2006 19:13
von TomTom
Hat sich erledigt! Habe den perfekten Befehl gefunden. Habe es mit EditorGadget() gelöst ^^
Verfasst: 18.10.2006 19:17
von TomTom
Achja ein Problem gibt es da noch

wenn ich neuen Text hinzuschreibe und es unterhalb des Gebietes ist, dann geht die Scrollbar nicht mit, also die Scrollbar soll immer auf den neusten Stand sein
Verfasst: 18.10.2006 19:28
von Frogger
Wenn du das Editorgadget mit Text füllst, musst du immer danach diese Procedure aufrufen.
Code: Alles auswählen
;Gadget.l ist die Nummer des EditorGadgets
Procedure EditorGadgetLocate(Gadget.l)
y=CountGadgetItems(Gadget)
x=1
REG = GadgetID(Gadget)
CharIdx = SendMessage_(REG,#EM_LINEINDEX,y-1,0)
LLength = SendMessage_(REG,#EM_LINELENGTH,CharIdx,0)
If LLength >= x-1
CharIdx + x-1
EndIf
Range.CHARRANGE
Range\cpMin = CharIdx
Range\cpMax = CharIdx
SendMessage_(REG,#EM_EXSETSEL,0,Range)
EndProcedure
Verfasst: 18.10.2006 19:28
von ts-soft
Versuchs mal hiermit:
Code: Alles auswählen
SendMessage_(GadgetID(#EDITOR)l, #EM_LINESCROLL, #Null, number)
Verfasst: 18.10.2006 19:37
von TomTom
was muss ich denn für #EM_LINESCROLL und #Null und number eingeben?
Verfasst: 18.10.2006 19:45
von ts-soft
TomTom hat geschrieben:was muss ich denn für #EM_LINESCROLL und #Null und number eingeben?
In PB4 sind die alle deklartiert. #NULL hat den Wert 0, #EM_LINESCROLL ist
182. number sollte die nummer der letzten Zeile sein, was Du mit
CountGadgetItems(#EDITOR) ermitteln kannst
Verfasst: 18.10.2006 19:51
von Frogger
Im Prinzip macht meine Procedure genau das.
Nur mit dem Unterschied, dass du nur die Gadgenummer übergeben musst.
Falls du es nicht weist. Aufgerufen wird es so:
Verfasst: 18.10.2006 19:52
von TomTom
Hmm also es geht nicht, was mache ich falsch?
Code: Alles auswählen
neu$ = neu$+ Chr(13) + string$
SetGadgetText(2, neu$ )
nummer =CountGadgetItems(2)
SendMessage_(2, #EM_LINESCROLL, #Null, number)
Zu erwähnen ist, neu$ ist der ganze Text und string$ ist das hinzugefügte Teilchen
Verfasst: 18.10.2006 19:55
von Frogger
Code: Alles auswählen
neu$ = neu$+ Chr(13) + string$
SetGadgetText(2, neu$ )
number =CountGadgetItems(2)
SendMessage_(GadgetID(2), #EM_LINESCROLL, #Null, number)
Sagt mal, sind meine Posts unsichtbar?
