Seite 1 von 1
Abfrage welches Gadget aktiv
Verfasst: 07.02.2005 15:23
von saimen
ich hab drei listicongadgets von wo aus ich über ein rechtsklick menü Einträge bearbeiten kann.
Gibts ne einfach Möglichkeit abzufragen von welchem Gadget dabei Aktiv ist?
Verfasst: 07.02.2005 15:27
von Caliban
Ich machs immer so:
Code: Alles auswählen
Procedure GetSelectedListIconItem(id)
For x = 1 To CountGadgetItems(id)
If GetGadgetItemState(id,x) & #PB_ListIcon_Selected
ProcedureReturn x
Break
EndIf
Next x
EndProcedure
Verfasst: 07.02.2005 15:58
von saimen
Ja, aber das problem ist, wenn du dich mal duch alle 3 ListIcons bewegt hast, ist in jedem Gadget min. ein Element aktiv. Und Wenn ich jetzt z.b. vom ListIconGadet #1 ein Element bearbeiten will und dafür dann alle 3 Listen auf Aktive Elemente überprüfe bekomme ich min. 3 elemente mit state=1
Verstehst du was ich meine?
Ich möchte abfragen können in welchem der 3 ListIconGadgets ich mich befinde, und diese Liste dann auf selected checken.
Verfasst: 07.02.2005 16:24
von DarkDragon
If GetFocus_() = GadgetID() sollte doch helfen?!?
Verfasst: 07.02.2005 19:13
von saimen
komischerweis ermittelt GetFocus_() bei jedem Klick eine andere ID, so dass die Bedingung nicht wahr wird???
Verfasst: 07.02.2005 19:15
von saimen
oh, ich glaub ich weis wo der Fehler liegt. GetFocus_() ermittelt die Id von meinem RechtsklickSubMenu und nicht von dem Gadget.
Das ist natürlich nicht das was ich will.....
Verfasst: 07.02.2005 19:23
von Lukaso
Also bei mir funktioniert es, vll. hast du GadgetID() vergessen ....
Code: Alles auswählen
If GetFocus_() = GadgetID(ID zum ListIconGadget)
Debug "List Gadget Aktiv"
ElseIf GetFocus_() = GadgetID(ID zum 2. zum ListIconGadget)
Debug "2. List Gadget Aktiv"
EndIf
MFG Lukaso
Verfasst: 07.02.2005 19:24
von saimen
ABer ich werd die ID einfach vorher ermitteln.
Mit welchen API-Befehl kann ich dann wieder rückwirkend auf das Objekt zugreifen?
Hab bis jetzt leider noch keine gute Dokumentation gefunden die mir alle Befehle für WinAPI erläutert.