Page 1 sur 1
[..] Cliquer sur un bouton avec class:SSTabCtlWndClass ??
Posté : dim. 16 nov. 2014 19:40
par davzell
bonjour,
J'aimerai pouvoir utiliser autoit pour cliquer sur les boutons d'une fenêtre.
Le fenêtre est composé en bas de 4 onglets avec marqué sur chacun "Test numéro X", X allant de 1 à 4.
je joins les informations que j'obtiens lors du windows info sur le bouton en question.
Est ce qu'on peut faire quelque chose du "SSTabCtlWndClass" vu qu'avec Controlclick ca ne marchera pas je pense?
merci
>>>> Window <<<<
Title: test
Class: ThunderRT6FormDC
Position: 204, 50
Size: 1032, 800
Style: 0x16CF0000
ExStyle: 0x00040100
Handle: 0x000906A0
>>>> Control <<<<
Class: SSTabCtlWndClass
Instance: 1
ClassnameNN: SSTabCtlWndClass1
Name:
Advanced (Class): [CLASS:SSTabCtlWndClass; INSTANCE:1]
ID:
Text:
Position: 0, 64
Size: 1025, 696
ControlClick Coords: 591, 685
Style: 0x56000000
ExStyle: 0x00000000
Handle: 0x000802D0
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : mer. 19 nov. 2014 22:12
par mikell
Sujet déplacé dans l'aide générale
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 09:45
par Y01
Bonjour,
Je ne m'y connais pas beaucoup en interaction avec une fenêtre mais je pense que tu peux simuler un déplacement souris ainsi qu'un clic par rapport aux coordonnées de ta fenêtre.
Un tuto est disponible
ici.
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 09:49
par jguinch
Tu as essayer ControlClick en utilisant [CLASS:SSTabCtlWndClass; INSTANCE:1] ?
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 10:07
par davzell
Y01 a écrit :Bonjour,
Je ne m'y connais pas beaucoup en interaction avec une fenêtre mais je pense que tu peux simuler un déplacement souris ainsi qu'un clic par rapport aux coordonnées de ta fenêtre.
Un tuto est disponible
ici.
effectivement mais la simulation de souris c'est pas top je trouve, il me faudrait un truc plus "carré"
jguinch a écrit :Tu as essayer ControlClick en utilisant [CLASS:SSTabCtlWndClass; INSTANCE:1] ?
oui j'ai essayé mais ça ne peux pas marcher.
tous les onglets de ma fenêtre on pour propriété CLASS:SSTabCtlWndClass; INSTANCE:1 donc impossible de s'en servir.
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 10:13
par Y01
Il y a aussi la "solution" de faire des images de tes boutons et de dire à Autoit de cliquer sur une image.
C'est tout de suite plus précis car tu n'utilise pas de coordonnées mais ça alourdis peut être un peu ton code...
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 10:55
par davzell
Y01 a écrit :Il y a aussi la "solution" de faire des images de tes boutons et de dire à Autoit de cliquer sur une image.
C'est tout de suite plus précis car tu n'utilise pas de coordonnées mais ça alourdis peut être un peu ton code...
oui c'est ma solution de replis mais je voulais voir si il y avait pas autre chose.
j'avais vu ca sur le site anglais qui je pense pourrais m'aider mais c'est assez compliqué
http://www.autoitscript.com/forum/topic ... automation
est ce que quelqu'un peut me confirmer déjà que ça pourra m'aider

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 13:46
par jguinch
Oui, ça peut t'aider.
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 17:59
par davzell
ca part mal j'ai direct une erreur en lançant le script simplyspy
C:\Program Files (x86)\AutoIt3\Include\UIAWrappers.au3(978,82) : WARNING: $STR_REGEXPMATCH: possibly used before declaration.
$iMatch = StringRegExp($propertyActualValue, $propertyVal, $STR_REGEXPMATCH )
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 23:10
par jguinch
Je ne sais pas s'il y a beaucoup de monde ici qui utilise cet UDF...
Je pense que le mieux serait de poser la question directement sur le forum US...
Sinon tu as essayé avec _GUICtrlTab_GetItemCount (c'est pas gagné) ?
Code : Tout sélectionner
$hTab = ControlGetHandle("[CLASS:ThunderRT6FormDC]", "", "[CLASS:SSTabCtlWndClass; INSTANCE:1]")
ConsoleWrite( _GUICtrlTab_GetItemCount($hTab) )
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : jeu. 20 nov. 2014 23:26
par orax
T'as bien pris la dernière version ? Je n'ai pas ce problème.
UIA_V0_51.zip
EXAMPLES_V0_5.zip
Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?
Posté : ven. 21 nov. 2014 09:24
par davzell
j'ai trouvé, trop vieille version de Autoit sur mon poste
reste a trouver comment utiliser ce que me récupère le simplyspy
j'ai ça comme code pour mon bouton, je suppose que ma variable Local $oP0 correspond au bouton que je peux utiliser avec Controlclick par exemple ?
Code : Tout sélectionner
;~ *** Standard code ***
#include "UIAWrappers.au3"
AutoItSetOption("MustDeclareVars", 1)
Local $oP0=_UIA_getObjectByFindAll($UIA_oDesktop, "test;controltype:=UIA_WindowControlTypeId;class:=ThunderRT6FormDC", $treescope_children)
_UIA_Action($oP0,"setfocus")
_UIA_setVar(".mainwindow","title:=;classname:=SSTabCtlWndClass")
_UIA_action(".mainwindow","setfocus")