[R] Bug à la fermeture de la 2eme GUI

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

[R] Bug à la fermeture de la 2eme GUI

#1

Message par SurPriseS »

http://www.autoitscript.fr/forum/viewto ... 230#p59230

Bonjour !
Petit bug que j'arrive pas à résoudre... (presque sur que c'est une bêtise, mais je trouve pas :( )

Quand je choisit de modifier le volume (icône volume mute en haut à droite), la gui 2 apparais bien (elle est créer et détruite dans "Fonction gui volume.au3").

Je la lance via :

Code : Tout sélectionner

case $PIC_volume
AdlibRegister(_gui_volume())
C'est la première fois que j'utilise "AdlibRegister" mais je suis pas certain de l'utilisé correctement...

Bref, la gui2 se créer bien et se détruit bien, mais je n'est plus accès au fonction de la gui principale (comme si elle était planté/en pause). Que se soit une fois que la gui2 est détruite, ou bien pendant, hors avec "AdlibRegister" la GUI1 devrais continuer de tourner normalement ?

2eme chose, es-ce qu'il y'a une méthode pour garder la gui2 toujours au dessus de la gui1 ?

Merci ;)
Modifié en dernier par SurPriseS le mar. 06 déc. 2011 21:43, modifié 1 fois.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#2

Message par mikell »

Avec AdlibRegister("_gui_volume") tu lances la fonction _gui_volume() à répétition, par défaut toutes les 250 ms :mrgreen:
Si tu veux quand même utiliser AdlibRegister il te faut mettre en tête de la fonction AdlibUnRegister()
De plus,
l'aide a écrit :AdlibRegister - Remarks
The adlib function should be kept simple as it is executed often and during this time the main script is paused.
Dans le while de la fonction volume, ya un Sleep(50) et tu incrémentes 50 fois, ce qui donne... 250 ms :mrgreen:
2eme chose, es-ce qu'il y'a une méthode pour garder la gui2 toujours au dessus de la gui1 ?
$WS_EX_TOPMOST ou WinSetOnTop($gui2, "", 1)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#3

Message par SurPriseS »

C'est ce que j'étais entrain de relire, et de me dire que sa colle pas avec ce que je veux faire...
Pourtant de souvenir, c'est bien cette fonction qui permet de faire du "multi tache" avec autoit ?

Mais le bug ne viens pas de AdlibRegister, vu que si je lance ma fonction "normalement", ben, ça plante pareil...



Pour $WS_EX_TOPMOST, je l'ai déjà, mais sa suffit pas... mais vu que les 2 gui ont cet attribut... à voir...
WinSetOnTop($gui2, "", 1), ne fait pas plus d'effet (mais ça vient peut être du fait que l'autre GUI est aussi en $WS_EX_TOPMOST)
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#4

Message par mikell »

Tu as essayé GuiSwitch($gui1) avant de détruire la gui2 ?
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#5

Message par SurPriseS »

Je ne connaissais pas cette fonction, mais ça ne change rien...

Y'avais quelques erreurs de variable que j'ai corrigé, mais sa ne change rien...

j'ai réup une version "corrigé" : http://www.k1der.net/~surprise/fichiers ... e%20V2.zip
Les erreurs restantes sont du à des fonctions qui ont était désactivé pour le moment...

Mais je me dit que je m'y prend peut être mal...

Mon but, c'est que le script principal continue de fonctionner correctement si on change le volume... par exemple si on arrive sur un changement de chanson quand on modifie le volume, il faut que le script continue d'avancer normalement et passe bien à la chanson suivante...


C'est bien le $WS_EX_TOPMOST de la première GUI que la 2eme peut passer au second plan... Faut que je fasse des tests...
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#6

Message par mikell »

AMHA tant que tu auras une boucle while secondaire qui tourne tu bloqueras le script principal...
Faudrait essayer de faire sans Image
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#7

Message par SurPriseS »

Mouais, donc je suis dans la merdouille quoi !

va falloir cogiter pour trouver une solution, enfin, si solution il y as...
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#8

Message par mikell »

SurPriseS a écrit :va falloir cogiter pour trouver une solution, enfin, si solution il y as...
Il y a
Tu peux très bien ouvrir une 2ème gui et la commander depuis le script principal
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#9

Message par SurPriseS »

Euh, je comprend pas tout :oops:

Un 2eme programme à part entière qui papote avec le premier ?

Parce que là j'ouvre déjà une 2eme GUI, mais je comprend pas le commander depuis la première ? :|
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] bug à la fermeture de la 2eme GUI

#10

Message par mikell »

Ben la gestion des controles de la 2ème gui peut être faite dans la boucle principale du script maitre
Le plus simple que j'aie déjà fait était structuré comme ça :
► Afficher le texte
ça marchait pas mal ^^
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] Bug à la fermeture de la 2eme GUI

#11

Message par SurPriseS »

hum, ok je vois a peu près ! j'essayerais cette aprem ;)
sinon pte pas besoin de passer par une 2eme gui... mais je ne sais pas se que donnerais une superposition de bouton png... je testerais aussi... mais j'ai peur d'erreur de clipping et autre...

merci en tout cas ;)
SurPriseS
Niveau 6
Niveau 6
Messages : 293
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [R] Bug à la fermeture de la 2eme GUI

#12

Message par SurPriseS »

Bon, j'ai testé ce soir finalement ^^

Donc :
- Superposition des images PNG = très mauvaise idée ! :D
- Solution de mikell = Marche au poil !

Merci beaucoup ;)
Répondre