ListViewGadget per Doppelklick wählen?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Jet1199
Beiträge: 29
Registriert: 06.03.2005 00:33

ListViewGadget per Doppelklick wählen?

Beitrag von Jet1199 »

Hallo,

ich möchte aus einem ListViewGadget einen Wert per Doppelklick (ohne Auswahl und folgendem OK) übernehmen, um ihn später auszuwerten.

Die Liste (im Beispiel die Verzeichnisse von c:) wird korrekt erstellt, ich kann die Einträge auswählen, aber ich bekomme es nicht hin, per Doppelklick einen Wert zu übernehmen und die Schleife zu beenden.

Die UNTIL-Zeile muß also ergänzt werden, das Fensterschließen nach wie vor mit berücksichtigt werden.

Frage: Wie beende ich die UNTIL-Schleife durch Doppelklick auf einen Eintrag?

Programmschnipsel hierzu:

Code: Alles auswählen

ListViewGadget(0, 10, 10, 250, 120)
  Directory$="c:\"
  If ExamineDirectory(0, Directory$, "*.")  
      While NextDirectoryEntry(0)
        If DirectoryEntryType(0) <> #PB_DirectoryEntry_File
          AddGadgetItem (0, -1, DirectoryEntryName(0))   ; Listview-Eintrag hinzufügen
          SetGadgetState(0, 9)    ; wir setzen (beginnend bei 0) den zehnten Eintrag als aktiven
        EndIf 
      Wend
    EndIf
    FinishDirectory(0)

    Repeat
      Event = WaitWindowEvent()
    Until Event = #PB_Event_CloseWindow   ; ... hier muß "was dazu, denke ich ...
Vielen Dank für Eure Mühe im Voraus ...

Jens


__________________________________________________
Code-Tags hinzugefügt
07.01.2010
RSBasic
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: ListViewGadget per Doppelklick wählen?

Beitrag von Kiffi »

einfach nur EventType() in der Eventschleife auswerten:

Code: Alles auswählen

Repeat
  
  WWE = WaitWindowEvent()
  
  Select WWE
      
    Case #PB_Event_Gadget
      
      Select EventGadget()
          
        Case #DeinListIconGadget
          
          Select EventType()
              
            Case #PB_EventType_LeftDoubleClick
              
              Debug "Juhu"
              
          EndSelect
          
      EndSelect
      
  EndSelect
  
Until WWE = #PB_Event_CloseWindow
Grüße ... Kiffi
a²+b²=mc²
Jet1199
Beiträge: 29
Registriert: 06.03.2005 00:33

Re: ListViewGadget per Doppelklick wählen?

Beitrag von Jet1199 »

Gelöst!

@Kiffi
Genial! Danke Kiffi. Habe Deinen Schnipsel bei mir eingefügt und personalisiert.
Komme nun mit GetGadgetState() und GetGadgetItemState() dorthin, wo ich hin will.
Du hast mir sehr geholfen, vielen Dank dafür!!!
Antworten