Mehrzeiligen Text eingeben mit keybd_event_ geht nicht
Verfasst: 03.11.2008 23:41
Hallo alle zusammen,
ich versuche seit Tagen fieberhaft einen mehrzeiligen Text per -Button-Klick- in ein StringGadget einzufügen, dazu muss sozusagen die "Return" Taste nach jeder Zeile gedrückt werden. Mein Ziel ist es mit mehreren vordefinierten Textbausteinen zu arbeiten die dann nur auf Klick eingefügt werden.
Soweit funzt alles bis auf die Reihenfolge der Befehle, erst schreibt er die Zeilen alle hintereinander und dann haut er die "Returns" darunter.
Warum?
Ich hoffe doch das ich hier bei den Profis Hilfe finde und bedanke mich jetzt schonmal für die Antworten.
ich versuche seit Tagen fieberhaft einen mehrzeiligen Text per -Button-Klick- in ein StringGadget einzufügen, dazu muss sozusagen die "Return" Taste nach jeder Zeile gedrückt werden. Mein Ziel ist es mit mehreren vordefinierten Textbausteinen zu arbeiten die dann nur auf Klick eingefügt werden.
Soweit funzt alles bis auf die Reihenfolge der Befehle, erst schreibt er die Zeilen alle hintereinander und dann haut er die "Returns" darunter.
Warum?

Ich hoffe doch das ich hier bei den Profis Hilfe finde und bedanke mich jetzt schonmal für die Antworten.
Code: Alles auswählen
If OpenWindow(0, 100, 100, 600, 300, "Eifügen", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
If CreateGadgetList(WindowID(0))
ButtonGadget (2311, 450 , 30, 120, 35, "Einfügen")
StringGadget (2305, 20, 30, 400, 200, "",#ES_MULTILINE | #WS_VSCROLL | #WS_HSCROLL)
EndIf
SetActiveGadget(2305)
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_Gadget
Select EventGadget()
Case 2311
SendMessage_(GadgetID(2305),#EM_REPLACESEL,0,"Zeile 1"):
keybd_event_(#VK_RETURN,0,0,0)
keybd_event_(#VK_RETURN,0,#KEYEVENTF_KEYUP,0)
Delay(60)
SendMessage_(GadgetID(2305),#EM_REPLACESEL,0,"Zeile 2"):
keybd_event_(#VK_RETURN ,0,0,0)
SendMessage_(GadgetID(2305),#EM_REPLACESEL,0,"Zeile 3"):
keybd_event_(#VK_RETURN ,0,0,0)
SetActiveGadget(2305)
EndSelect
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1
EndIf
End