Seite 1 von 1

keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 00:12
von haggi
Hallo leute hier im Forrum,

ich meine ich hab villeicht ein Problem gefunden. Ich habe in der hilfe von purebasic 4.31 folgendes gefunden unter setgadgetitemstate:

TreeGadget(): gibt eine Kombination der folgende Werte zurück:
#PB_Tree_Selected : Der Eintrag ist ausgewählt, andernfalls 0.
#PB_Tree_Expanded : Der Eintrag ist ausgeklappt (ein "Baum"-Eintrag ist geöffnet), andernfalls 0.
#PB_Tree_Collapsed : Der Eintrag ist nicht ausgeklappt.
#PB_Tree_Checked : Das Häkchen bei einem Eintrag ist gesetzt, andernfalls 0. (nur mit #PB_Tree_CheckBoxes Flag)

konkret geht es darum, dass es keine möglichkeit gibt, einen haken aus einer checkbox zu entfernen. ich habe nur möglichkeiten im forum bisher über die winapi gefunden. ich habe alles mögliche ausprobiert. und ein lösung gefunden! und zwar indem man anstatt ner konstanten folgendes angibt:

SetGadgetItemState(#gadget , postition, 10 )

hier hab ich als parameter nur den wert 10 anstatt der Konstanten eingegeben.

villeicht ist euch ja ne konstante bekannt, dann meldet euch doch bitte!

ansonsten hoffe ich, ich konnte euch weiter helfen.

gruß haggi

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 00:15
von Kaeru Gaman
Unchecking checkboxes using code (solved)
http://www.purebasic.fr/english/viewtop ... 13&t=39270

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 09:49
von Kai
SetGadgetItemState(#Gadget, Item, 0) macht es doch.

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 10:02
von ts-soft
Kai hat geschrieben:SetGadgetItemState(#Gadget, Item, 0) macht es doch.
Damit entfernste alle Attribute, nicht nur Checked!
Normallerweise wird dieses Attribut auch nur beim Erstellen gesetzt, ansonsten
durch den User.

Wer es unbedingt benötigt, kann es so machen, wie srod es im engl. Forum
gepostet hat:

Code: Alles auswählen

SetGadgetItemState(0, item, GetGadgetItemState(0, item)&~#PB_ListIcon_Checked)
Gruß

Thomas

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 10:11
von Little John
ts-soft hat geschrieben:Normallerweise wird dieses Attribut auch nur beim Erstellen gesetzt, ansonsten durch den User.
Das würde ich so nicht sagen. Wenn es eine lange Liste von Items gibt, ist es durchaus sinnvoll dem User die Optionen (z.B. im Kontextmenü oder in Form von Buttons) "Alle markieren" und "Keine markieren" anzubieten. Sie/er freut sich dann, wenn es nicht nötig ist alle Checkboxen einzeln anzuklicken. :-)

Gruß, Little John

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 10:21
von Kiffi
Little John hat geschrieben:"Alle markieren" und "Keine markieren"
ebenso ist es üblich, die Haken aller Child-Nodes zu entfernen, wenn der Parent-Node 'enthakt' wird (und vice versa).

Grüße ... Kiffi

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 10:22
von ts-soft
Aber das Einführen eine Konstante für diesen Vorgang ist "nicht" möglich :)

Re: keine Konstante bei TreeGadget und Setgadgetitemstate

Verfasst: 29.09.2009 10:29
von Kiffi
ts-soft hat geschrieben:Aber das Einführen eine Konstante für diesen Vorgang ist "nicht" möglich :)
davon hat ja auch keiner gesprochen. Meine Antwort galt
lediglich als ergänzender Hinweis zu Deiner Aussage:
ts-soft hat geschrieben:Normallerweise wird dieses Attribut auch nur beim Erstellen gesetzt, ansonsten durch den User.
;-)

Grüße ... Kiffi