Bonjour,
La solution doit exister mais après avoi parcourut tout le net je ne trouve pas...
Dans mon application, j'ai un TToolBar comprenant 4 bouttons, mais apparement impossible de lancer un click dessus puisqu'il n'y aucun nom ni info concernant le boutton seul.
Existe t-il un moyen de lancer un click sur le bouton de la TToolBar sans passer par un Mousclick puisque la fenêtre peut évidemment changer d'emplacement.
Ou alors est-il possible de faire un ControlClick (en dernier recours) en prenant la position du boutton dans la fenetre, qui lui ne changera jamais de place ?
Merci
[R] TToolBar et Button
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] TToolBar et Button
Modifié en dernier par lokomass le mer. 15 déc. 2010 14:35, modifié 3 fois.
- TommyDDR
- Modérateur

- Messages : 2130
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [..]TToolBar et Button
Pouvez vous nous dire de quel programme il sagit (et avoir une impression écran) ?
Je ne pense pas qu'un TToolBar soit créé avec les fonctions de bases de windows (spéculation) et donc qu'il ne soit pas ControlClickable. (à vérifier)
Sinon, vous pouvez récupérer les coordonnées de la fenêtre "WinGetPos()" et faire un calcul dessus pour avoir les coordonnées du bouton.
Ou, plus simple, un "WinMove()" à la position "0, 0" pour avoir un emplacement fixe pour vos "MouseClick()".
(Ps : je n'aime pas trop les "MouseClick()" en général, ca empêche l'utilisatioin du script en background. Dites m'en plus sur ce que vous voulez faire.)
Je ne pense pas qu'un TToolBar soit créé avec les fonctions de bases de windows (spéculation) et donc qu'il ne soit pas ControlClickable. (à vérifier)
Sinon, vous pouvez récupérer les coordonnées de la fenêtre "WinGetPos()" et faire un calcul dessus pour avoir les coordonnées du bouton.
Ou, plus simple, un "WinMove()" à la position "0, 0" pour avoir un emplacement fixe pour vos "MouseClick()".
(Ps : je n'aime pas trop les "MouseClick()" en général, ca empêche l'utilisatioin du script en background. Dites m'en plus sur ce que vous voulez faire.)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Re: [..]TToolBar et Button
Merci de ta réponse,
Mais j'ai finalement trouvé comment faire, en fait, je voulais pas de MousClick par rapport au mouvements de la fenêtre mais en réflechissant, je peux me servir des coordonées du bouton à l'intérieu de la TToolbar, qui elle sera toujours fixe, et le bouton à la même place.
Après des tas de recherches, j'en ai conclu que c'était la seule solution mais qui au finale reste quand même suffisamment propre pour fonctionner sans problèmes.
Voici la ligne, qui permet de cliquer dans le TToolBar à l'endroit précis ou se situe le bouton...
Mais j'ai finalement trouvé comment faire, en fait, je voulais pas de MousClick par rapport au mouvements de la fenêtre mais en réflechissant, je peux me servir des coordonées du bouton à l'intérieu de la TToolbar, qui elle sera toujours fixe, et le bouton à la même place.
Après des tas de recherches, j'en ai conclu que c'était la seule solution mais qui au finale reste quand même suffisamment propre pour fonctionner sans problèmes.
Voici la ligne, qui permet de cliquer dans le TToolBar à l'endroit précis ou se situe le bouton...
Code : Tout sélectionner
ControlClick("Spybot - Search & Destroy","", "[CLASS:TToolBar; INSTANCE:1]", "left", 1, 168, 17)

