[R] La colorisation d'un bouton modifie son comportement

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

[R] La colorisation d'un bouton modifie son comportement

#1

Message par jl56 »

bonjour

Pour rendre plus agreable un script j'ai voulu colorié certain bouton et inputbox

mais le comportement du bouton provoque un rebond comme si il était cliqué 2 fois ( tester l'exemple ci dessous )
dans mon appli c'est plusieurs fois je suis obligé de sortir du script

Code : Tout sélectionner

#include <GuiConstants.au3>
GuiCreate("coloration d'un bouton c'est zarbi ",700, 510)
GUISetState ()

$quitter = GUICtrlCreateButton(" QUITTER", 590, 270, 100, 30)
$pingip = GuiCtrlCreateInput(@IPAddress1, 164, 224, 100, 20)
GUICtrlSetBkColor(-1,0xFFBFFF)

$pingipbt = GUICtrlCreateButton("PING  de l'adresse     -----> ", 10, 220, 150, 30)
;~ GUICtrlSetBkColor($pingipbt,0XEE82EE)
;~ GUICtrlSetBkColor($pingipbt,0x00ff00)
;~ GUICtrlSetBkColor($pingipbt,0XFF00FF)
GUICtrlSetBkColor($pingipbt,0XFFFF00)
; debut boucke ************************************************
Do


$msg = GUIGetMsg()

if $msg=$pingipbt then
    
    MsgBox(4096,"","test du bouton ping "&$msg)
    
EndIf
Until $msg = $GUI_EVENT_CLOSE or $msg = $quitter
quelqu'un aurait'il une suggestion

merci

a+ jl56
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

#2

Message par Tlem »

Il y à effectivement un truc bizarre, car si on remplace le GUICtrlCreateButton par un GUICtrlCreateLabel, tout fonctionne correctement.

J'ai essayé plusieurs petites choses sans résultat.
A moins d'une option dont je ne connais pas l'existence, je pense qu'il y à un bug qu'il serait bon de signaler sur le forum Anglais.
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é".
papami
Niveau 4
Niveau 4
Messages : 96
Enregistré le : lun. 19 nov. 2007 17:25
Status : Hors ligne

Re: la colorisation d'un bouton modifie son comportement

#3

Message par papami »

[quote="jl56"]bonjour

Pour rendre plus agreable un script j'ai voulu colorié certain bouton et inputbox

mais le comportement du bouton provoque un rebond comme si il était cliqué 2 fois ( tester l'exemple ci dessous )
dans mon appli c'est plusieurs fois je suis obligé de sortir du script

Code : Tout sélectionner

#include <GuiConstants.au3>
GuiCreate("coloration d'un bouton c'est zarbi ",700, 510)
GUISetState ()

$quitter = GUICtrlCreateButton(" QUITTER", 590, 270, 100, 30)
$pingip = GuiCtrlCreateInput(@IPAddress1, 164, 224, 100, 20)
GUICtrlSetBkColor(-1,0xFFBFFF)

$pingipbt = GUICtrlCreateButton("PING  de l'adresse     -----> ", 10, 220, 150, 30)
;~ GUICtrlSetBkColor($pingipbt,0XEE82EE)
;~ GUICtrlSetBkColor($pingipbt,0x00ff00)
;~ GUICtrlSetBkColor($pingipbt,0XFF00FF)
GUICtrlSetBkColor($pingipbt,0XFFFF00)
; debut boucke ************************************************
Do


$msg = GUIGetMsg()

if $msg=$pingipbt then
    
    MsgBox(4096,"","test du bouton ping "&$msg)
    
EndIf
Until $msg = $GUI_EVENT_CLOSE or $msg = $quitter[/autoit]



quelqu'un aurait'il une suggestion

merci

a+ jl56[/quote]


Bonjour
bricolage, mais 'ça marche' :
...
[autoit]if $msg=$pingipbt then
    MsgBox(4096,"","test du bouton ping "&$msg)
    $msg = GUIGetMsg() ; <------------- 
    endif
...
Bye
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1550
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

#4

Message par sylvanie »

c'est amusant, quand on appuie sur le bouton via le clavier et non la souris, on n'a pas le problème, et on perd le focus
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

ok ca fonctionne

#5

Message par jl56 »

bonjour

merci papami

pour ton astuce c'a fonctionne
je comprend pas mais des fois faut pas chercher

comme le dit tlem il y a un bug
mais je ne suis pas anglophone pour en informer le forum anglais

je n'avais pas testé au clavier sylvanie c'est tres curieux comme resultat

a+ jl56
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

ET NON TOUJOUR PROBLEME

#6

Message par jl56 »

BONJOUR

dans l'exemple c'a fonctionne
mais dans mon appli
action du bouton est répété sans cesse

j'abandonne dommage c'était très jolie

j'ai créé un script qui affiche plein de valeur d'un pc
genre ip passerelle masque dns utilisateur domaine etc..

pour que mes clients puisse me donner l'info plus facilement
et avec des boutons colorisé c'était plus facile pour lancer un ping
"quel est le nombre affiché dans la case bleu (passerelle)"
"cliquez sur le bouton vert merci. avez vous des réponses ? si oui ok le routeur est bien branché"
etc..

a+ jl56
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

#7

Message par Tlem »

Temps pis pour le bouton, passez par un label, puisque dans ce cas ca ne bug pas. ;)
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é".
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

#8

Message par ani »

je comprend même pas le problème...

mais il me semblait que la construction d'une gui etait suivit de ses controle et ensiute on y indiqué Guisetstate avant la boucle dite while ou do
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

bonjour ani test ceci et tu comprendras

#9

Message par jl56 »

bonjour ani
j'ai corrigé ce simple comme tu la précisé

Code : Tout sélectionner

#include <GuiConstants.au3>
GuiCreate("coloration d'un bouton c'est zarbi ",700, 510)
$quitter = GUICtrlCreateButton(" QUITTER", 590, 270, 100, 30)
$pingip = GuiCtrlCreateInput(@IPAddress1, 164, 224, 100, 20)
GUICtrlSetBkColor(-1,0xFFBFFF)
$pingipbt = GUICtrlCreateButton("PING  de l'adresse     -----> ", 10, 220, 150, 30)
GUICtrlSetBkColor($pingipbt,0XFFFF00)
GUISetState ()
Do
$msg = GUIGetMsg()
if $msg=$pingipbt then
MsgBox(4096,"","test du bouton ping ")
EndIf
Until $msg = $GUI_EVENT_CLOSE or $msg = $quitter
comme le dit sylvanie si tu sélectionnes le bouton au clavier
est différent du clic

a+ jl56
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

[r]bonjour à tous

#10

Message par jl56 »

bonjour

la derniere version autoit
fonctionne

a+ jl56
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

#11

Message par Tlem »

Vous voulez sans doute dire que le 'bug' à été corriger dans la version 3.2.10.0 de AutoIt3.
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é".
Répondre