Page 1 sur 1

[R] Impossible de trouver le bouton

Posté : lun. 08 mars 2021 16:02
par megane962
Bonjour à tous !

J'ai commencé à écrire un script pour faire des manipulations automatique dans un logiciel qui me sert à imprimer des données.
Actuellement j'ai réussi à lancer le logiciel et à effectuer quelques commandes :
Opt("WinTitleMatchMode", 1) ; Permet de chercher qu'une partie du titre de la fenêtre.
; Affichage d’une infobulle d’information
Traytip ("Ouverture BaseDeDonnée","Début d'Impression BaseDeDonnée",1000)
; Pause de 3 secondes
Sleep(3000)
; Lancer le programme
ShellExecute("BaseDeDonnee.exe")
; Attendre la fenetre principal de la BaseDeDonnée
WinWaitActive("Base De Donnée Central")
; lancer la fenetre principal de de la Base de Donnée Journaliere en effecutant une suite de frappe clavier
Send("!j")
Send ("t")
; Attendre la fenetre principal de la Base de Donnée Journaliere
WinWaitActive("Saisie de la Base de Donnée Journaliere pour J-n")
Donc, j'ouvre le logiciel et je me rend dans la fenêtre qui m’intéresse.
La où ça devient difficile c'est que je souhaite cliquer avec un controlClick par exemple sur un bouton dans la fenêtre en question, mais le bouton n'a pas de text et n'est même pas detecter par Autoit info.
Voici des images :
Image

Comment cliquer sur ce bouton sans passer par MouseClick s'il vous plait ?
Il y a t'il un moyen de connaitre la class et instance de ce bouton ?

EN vous remerciant à tous par avance ;)

Re: [..] Impossible de trouver le bouton

Posté : lun. 08 mars 2021 17:05
par megane962
J'ai trouvé une solution alternative en cliquant sur la couleur du bouton :
$color="0xFF0000"
Sleep(1000)
$coord=PixelSearch(0,0,@DesktopWidth,@DesktopHeight,$color)
if @error=1 Then Exit 1
MouseClick("left",$coord[0],$coord[1])
Mais je laisse le sujet ouvert, si quelqu'un aurai la solution principal ;)

Re: [..] Impossible de trouver le bouton

Posté : mar. 09 mars 2021 10:40
par Tlem
Bonjour Mégane.
Ce sujet récent peux éventuellement "répondre" a votre question.

Mais comme déjà évoqué, certains composants graphique exotique (Delphi, Windev, etc ..) peuvent être assez compliqué à atteindre directement avec les outils intégrés.

Re: [..] Impossible de trouver le bouton

Posté : mar. 09 mars 2021 11:18
par rgx
Bonjour Mégane,

Ne pas oublier de restreindre la zone de recherche de Pixel à la zone interne de l'application, sans cela n'importe quel pixel de même couleur sur le bureau (ex, une icône) risque de capter le curseur.

Je préfère utiliser ImageSearch avec l'image du bouton.
Si le bouton n'est pas complètement unique, mais toujours à une même place, on peut se servir d'un repère externe (ex: la barre titre)

:wink:

Re: [..] Impossible de trouver le bouton

Posté : mer. 10 mars 2021 01:39
par megane962
Merci Tlem pour le sujet intéressant. Merci rgx pour l'astuce avec ImageSearch et le conseil de restreindre la zone !
Je vais mettre le sujet Résolu ;)