Page 1 sur 1
[R] Utiliser plusieurs form
Posté : mar. 20 oct. 2009 17:12
par killshout
Bonjour,
Je n'ai rien trouvé en faisant une recherche.
Mon problème est que je dois utiliser dans mon programme des form différentes. Donc ce que je voulais faire c'est en crée deux et quand je dois passer de l'une a l'autre j'en caché une et afficher l'autre et vice versa. Le problème c'est que je n'ai pas trouvé le moyen de crée deux form puisqu'il y a qu'un GUISetState(@SW_SHOW).
J'ai aussi essayé de crée directement une fenêtre quand j'en ai besoin; c'est à dire quand une variable passé de 0 à 1. Sauf que la création était dans un if donc la form ne survivait pas a la sortie du if.
Existe-t-il un moyen de faire ça ?
Merci
Re: [...] Utiliser plusieurs form
Posté : mar. 20 oct. 2009 18:35
par guitarist
Si j'ai bien compris (ce qui arrive rarement ^^) tu veux passer d'une GUI a une autre en supriment celle d'avant puis la reprendre etc etc.
Pour cela j'ai une slution :
Tu met les deux GUI et leur bout de code dans une fonction chacune
Tu declare avec Global les deux GUI
Tu fais Gui delete lorsque tu veux supprimer une GUI
Tu apelle la bonne fonction au moment ou tu veux
Voila j'espere avoir été clair et avir repondu a ta question

Re: [...] Utiliser plusieurs form
Posté : mar. 20 oct. 2009 20:00
par killshout
Très bien compris ^^
J'arrive a tout faire tenir dans une fonction si je met tout en global :
Code : Tout sélectionner
Func Page1()
Global $Form1 = GUICreate("Feuille1", 593, 443, 192, 124)
Global $Label1 = GUICtrlCreateLabel("Outils de sondage", 160, 24, 267, 46)
GUICtrlSetFont(-1, 26, 800, 0, "Calibri")
Global $Suivant = GUICtrlCreateButton("Suivant", 456, 368, 100, 30, $BS_FLAT)
Global $Resultat = GUICtrlCreateButton("Résultat", 300, 368, 100, 30, $BS_FLAT)
Global $Label2 = GuiCtrlCreateLabel("Label", 456,250,100,100)
Global $Groupe = GuiCtrlCreateGroup("Listes",65, 130, 130,100)
Global $Radio1 = GUICtrlCreateRadio("Radio1", 72, 144, 113, 17)
Global $Radio2 = GUICtrlCreateRadio("Radio2", 72, 160, 113, 17)
Global $Radio3 = GUICtrlCreateRadio("Radio3", 72, 176, 113, 17)
Global $Radio4 = GUICtrlCreateRadio("Radio4", 72, 192, 113, 17)
GUICtrlSetState($Radio1, $GUI_CHECKED)
EndFunc
Merci !
Re: [R] Utiliser plusieurs form
Posté : ven. 23 oct. 2009 15:03
par killshout
Autres problèmes :/
Je suis obligé d'utiliser des booléens car dans ma boucle infini je test une variable qui n'est crée que dans la création d'une deuxième fenêtre.
Donc si je fais pas
car sinon il me dit que la variable $Sondage n'existe pas. Normal puisque dans la première GUI qui est crée ne crée pas cette variable. Donc il teste quelque chose qui n'existe pas.
Est-ce bien comme ca qu'on gère deux fenêtres différentes ?
J'ai un nouveau problème qui me fait douter de ma gestion de plusieurs fenêtre :
J'ai ma GUI numéro 1 qui, en fonction d'un paramètre, affiche un bouton (qu'on appellera x) ou non. Le problème c'est que cela décale les valeurs de mes boutons. C'est à dire : Dans le cas ou je crée mon bouton x la valeur du bouton y est de 5. Dans le cas ou je crée pas x, y vaut 4. Donc le mauvais bouton s'active dans ma boucle infini.
Re: [...] Utiliser plusieurs form
Posté : sam. 24 oct. 2009 21:16
par guitarist
Bon je suis pa tres sur de mes reponses mais je vais essayer :
moi je me serai pas tuer a chercher (

) et j'aurai fait un FileWrite et puis un FileRead , StringSplit dans le but de chercher une valeur voir meme creer un .ini et finalement le probleme de la variable est resolu

pas forcement le plus facile car c'est sur qu'il existe une vrai solution mais personnellement j'aurai fais comme sa.
Bonne chance !!
Re: [...] Utiliser plusieurs form
Posté : dim. 25 oct. 2009 10:52
par Tlem
Re: [...] Utiliser plusieurs form
Posté : dim. 25 oct. 2009 21:45
par killshout
Ah merci j'ai cherché un tuto mais j'avais pas trouvé. Pas les bon mot de recherche ...
Merci !