[R] Deux fenetres

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
XcessiV
Niveau 4
Niveau 4
Messages : 53
Enregistré le : mar. 07 août 2007 14:05
Localisation : Grenoble
Status : Hors ligne

[R] Deux fenetres

#1

Message par XcessiV »

Bonsoir.

Je voulais savoir si il était possible, lors d'un clic sur un bouton, qu'une seconde et voir une troisieme fenetre s'ouvre...

Si oui, pourriez vous me montrer un exemple, j'ai un peu de mal avec les commandes pour que le soft reste ouvert jusqu'à une interuption...

Merci :)
:) Merci à la AutoIt French Team pour son aide :)
saltan
Niveau 2
Niveau 2
Messages : 27
Enregistré le : dim. 30 sept. 2007 15:58
Status : Hors ligne

#2

Message par saltan »

Je n'ai pas bien compris ta question...

Tu veux que, dans une GUI, lorsque l'utilisateur clic sur un bouton, une autre fenetre GUI s'ouvre ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

#3

Message par Tlem »

Si ça peut aider :

Code : Tout sélectionner

#include <guiconstants.au3>

$gui1=GUICreate("msgbox1",200,100,-1,-1)
GUICtrlCreateLabel("le blabla",10,10,100)
$gui2=GUICreate("msgbox2",200,100,90,200)
GUICtrlCreateLabel("Leblabla2",10,10,100)
GUISetState(@SW_SHOW,$gui1)
GUISetState(@SW_SHOW,$gui2)
while 1
$msg = GUIGetMsg()
Select
case $msg = $GUI_EVENT_CLOSE
Exit
EndSelect
WEnd
Et

Code : Tout sélectionner

#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)  ; Change to OnEvent mode 
$mainwindow = GUICreate("Hello World", 200, 100)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
GUICtrlCreateLabel("Hello world! How are you?", 30, 10)
$okbutton = GUICtrlCreateButton("OK", 70, 50, 60)
GUICtrlSetOnEvent($okbutton, "OKButton")

$dummywindow = GUICreate("Dummy window for testing ", 200, 100)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")

GUISwitch($mainwindow)
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)  ; Idle around
WEnd

Func OKButton()
  ;Note: at this point @GUI_CTRLID would equal $okbutton
  MsgBox(0, "GUI Event", "You pressed OK!")
EndFunc

Func CLOSEClicked()
  ;Note: at this point @GUI_CTRLID would equal $GUI_EVENT_CLOSE,
  ;@GUI_WINHANDLE will be either $mainwindow or $dummywindow
  If @GUI_WINHANDLE = $mainwindow Then 
    MsgBox(0, "GUI Event", "You clicked CLOSE in the main window! Exiting...")
    Exit
  EndIf 
EndFunc
 
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
XcessiV
Niveau 4
Niveau 4
Messages : 53
Enregistré le : mar. 07 août 2007 14:05
Localisation : Grenoble
Status : Hors ligne

#4

Message par XcessiV »

Les variables ne s'exportent pas d'une fenetre à l'autre ?

J'ai une variable initialisée sur ma fenetre principale dont je voudrais faire usage sur la seconde. Or, elle apparait comme vide...
:) Merci à la AutoIt French Team pour son aide :)
saltan
Niveau 2
Niveau 2
Messages : 27
Enregistré le : dim. 30 sept. 2007 15:58
Status : Hors ligne

#5

Message par saltan »

Si bien, sur puisque les variables sont interne a ton programme, et non interne a la fenêtre.

Le problème vient peut-être du fait que tu les enregistre mal.

Pour enregistrer une variable, moi j'utilise ceci:

Code : Tout sélectionner

While 1
           $msg = GUIGetMsg()
           Select
            Case $msg = $GUI_EVENT_CLOSE
                 Exit
             Case $msg = $rez800
                 $rez=800
             Case $msg = $rez1052
                 $rez=1052
             Case $msg = $rez1200
                 $rez=1200
           EndSelect
       WEnd
Tu comprends ce que je veux dire ?
XcessiV
Niveau 4
Niveau 4
Messages : 53
Enregistré le : mar. 07 août 2007 14:05
Localisation : Grenoble
Status : Hors ligne

#6

Message par XcessiV »

merci, j'ai trouvé :p
je ne suis pas codeur pour un sous, je suis donc très mal organisé ^^
:) Merci à la AutoIt French Team pour son aide :)
Répondre