[..] Cliquer sur un bouton avec class:SSTabCtlWndClass ??

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

[..] Cliquer sur un bouton avec class:SSTabCtlWndClass ??

#1

Message 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
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#2

Message par mikell »

Sujet déplacé dans l'aide générale
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Y01
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 17 nov. 2014 10:46
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#3

Message 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.
Y01
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#4

Message par jguinch »

Tu as essayer ControlClick en utilisant [CLASS:SSTabCtlWndClass; INSTANCE:1] ?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#5

Message 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.
Y01
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 17 nov. 2014 10:46
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#6

Message 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...
Y01
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#7

Message 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 :)
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#8

Message par jguinch »

Oui, ça peut t'aider.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#9

Message 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 )
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#10

Message 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) )
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#11

Message 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
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

Re: [..] Cliquer sur un bouton avec class:SSTabCtlWndClass ?

#12

Message 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")
Répondre