Historique des modifications - Message

Message #2533

Sujet: Problème avec checkbox


Type Date Auteur Contenu
Création du message 03-07-2007 07:13:47 dark calculator

izguit Ecris:

Ca marchera mais les globales cay mal smile.

Je suis bien d'accord.
Sinon tu peut utiliser les id, tu mets une id à ta checkbox via setId ou quand tu la cree :
cbCarre = env->addCheckBox(true, core::rect<s32>(10,55,200,75), t1, id, L"Carre");
Chaque id doit etre unique et ensuite tu récupères le la check box en faisant dans ton main:
IGUICheckBox * cbCarre = gui->getRootGUIElement ()->getElementFromId(id,true);
Il faut peut etre faire un cast en rajoutant (IGUICheckBox *) après le egal.

C'est pratique mais il faut etre sur de son codeou faire une verification apres avec if (cbCarre)

Sinon tu peut aussi utiliser une structure ou tu mets toute les variables dont tu as besoin et tu fait passer le pointeur de cette variable a tes fonctions. C'est une aproche c et non c++ mais bon pour l'instant ton progamme est plus en c donc bon.

Sinon les autres methode proposé vont bien

Pour ton probleme c'est tres simple bien que pas facile a resoudre(enfin si mais c un peu chiant pour toi). Je crois que si j'ai bien compris ton code il y a une condition a qu'une toolbox soit creer donc di elle ne l'est pas encore le check n'existe pas non plus et le pointeur pointer donc vers n'importe quoi. C'est pour ca que normalement quand on ceer un pointeur on met tralala* tralala1 = 0; Comme ca le bug est repere plus facilement et c'est moin dangereux pour ton ordi. Pour resoudre ton probleme sinon il faut que tu vérifie que tes toolbox soit ouverte pour faire les tests que izguit t'a dit. Pour cela il faut rajouter une nouvelle variable tu genre bool toolboxcielopen = false; Que tu mets à true quand ta toolbox est ouverte et à false quand elle ne l'ai pas.
Sa va etre complique à mettre en place donc la methode proposé par copland me parait pas mal. Elle consiste à recuperer l'event quand tu clique sur une de tes checkbox et de mettre ton code de decochage/cochage dans MyEventReceiver car si tu clique sur une checkbox c'est qu'elle existe. Le probleme de la porte de tes variables reste entier : soit global, soit id.

J'ai pas le courage de me relire et c pas bien si tu ne comprend pas qq dis le moi et si tu veut un exemple pour dans l'event dit le aussi mais la g pas le courage.

dark calculator

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
151 invités en ligne
membre en ligne: -
RSS Feed