StringGadget - Cursor ans Ende setzen

Anfängerfragen zum Programmieren mit PureBasic.
ThoPie
Beiträge: 130
Registriert: 19.05.2006 15:18
Kontaktdaten:

StringGadget - Cursor ans Ende setzen

Beitrag von ThoPie »

Hallo,
wie ist es möglich, den Cursor ans Ende eines gefüllten StringGadgets zu setzen?
Vielen Dank.
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: StringGadget - Cursor ans Ende setzen

Beitrag von Kiffi »

ThoPie hat geschrieben:wie ist es möglich, den Cursor ans Ende eines gefüllten StringGadgets zu setzen?
kann man mit API machen. Ich habe unten mal eine Procedure SelectAll()
erstellt, der man nur die Nummer des StringGadgets übergeben muss.

Code: Alles auswählen

Procedure SelectAll(StringGadget.l)
  SendMessage_(GadgetID(StringGadget), #EM_SETSEL, Len(GetGadgetText(StringGadget)), 0)
EndProcedure

; Test:

#Window=0
#StringGadget=0

If OpenWindow(#Window, 0, 0, 270, 140, "") 
  If CreateGadgetList(WindowID(#Window))
    StringGadget(#StringGadget, 10, 10, 200, 20, "Guck mal!")
    SelectAll(#StringGadget)
    SetActiveGadget(#StringGadget)
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf 
EndIf


Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Helle
Beiträge: 566
Registriert: 11.11.2004 16:13
Wohnort: Magdeburg

Beitrag von Helle »

Noch ein Vorschlag mit #EM_SETSEL:

Code: Alles auswählen

If OpenWindow(0, 0, 0, 200, 50, "Caret an´s Stringende", #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
  If CreateGadgetList(WindowID(0))
    hSG=StringGadget(1, 10, 10, 175, 25, "")
    SetGadgetText(1, "Test")
    SendMessage_(hSG, #EM_SETSEL, $fffffff, $fffffff)  ;Caret an Ende des Strings setzen  
    SetActiveGadget(1)
  EndIf
EndIf
Repeat:Until WaitWindowEvent() = #PB_Event_CloseWindow
Gruss
Helle
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

oh, falsch gelesen!

@ThoPie: Der Code von Helle ist der richtige.
Mein Code selektiert den im StringGadget stehenden Text.

Grüße ... Kiffi
a²+b²=mc²
ThoPie
Beiträge: 130
Registriert: 19.05.2006 15:18
Kontaktdaten:

Beitrag von ThoPie »

Danke schön. :allright:
Antworten