[R] Obtenir la position d'un contrôle
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] Obtenir la position d'un contrôle
Bonjour
avec GuiGetCursorInfo on obtient bien l'id du contrôle survolé et la position du curseur de souris, mais je ne trouve pas de fonction permettant d'obtenir la position d'un contrôle (et ses dimensions), comme sait le faire Au3Info.exe ...
(et sans avoir à recalculer par rapport à la position mouvante de la GUI et aux positions/dimensions de création.)
possible ou non ?
Merci
avec GuiGetCursorInfo on obtient bien l'id du contrôle survolé et la position du curseur de souris, mais je ne trouve pas de fonction permettant d'obtenir la position d'un contrôle (et ses dimensions), comme sait le faire Au3Info.exe ...
(et sans avoir à recalculer par rapport à la position mouvante de la GUI et aux positions/dimensions de création.)
possible ou non ?
Merci
Modifié en dernier par papami le sam. 19 nov. 2011 17:59, modifié 3 fois.
- Ahbadiane
- Niveau 5

- Messages : 139
- Enregistré le : jeu. 20 déc. 2007 22:39
- Localisation : Paris
- Status : Hors ligne
Re: [..] obtenir la position d'un contrôle
Voir la fonction ControlGetPos()
- zeshrek
- Niveau 10

- Messages : 984
- Enregistré le : mer. 17 nov. 2010 09:31
- Localisation : Sur ma chaise
- Status : Hors ligne
Re: [..] obtenir la position d'un contrôle
Hum... voyons voir... un peu de d'anglais me semble de rigueur...
Contrôle se dit control en anglais
Obtenir se dit get
Position se dit position
Et si tu cherchais ControlGetPos dans l'aide ?
Pour ce qui est de sa taille... il me semble que c'est toi qui l'a fixée non ? donc a la limite colle la dans une variable si tu dois la reutiliser plus tard...
Edit : grillé, ca m'apprendra a vouloir faire des phrases...
Contrôle se dit control en anglais
Obtenir se dit get
Position se dit position
Et si tu cherchais ControlGetPos dans l'aide ?
Pour ce qui est de sa taille... il me semble que c'est toi qui l'a fixée non ? donc a la limite colle la dans une variable si tu dois la reutiliser plus tard...
Edit : grillé, ca m'apprendra a vouloir faire des phrases...
Si vis pacem para bellum
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] obtenir la position d'un contrôle
Oui mais qu'elles sont belles ces phrases ... 
Et quelle émotion quand on les découvre ces fonctions control, bien cachées qu'elles sont sous 'windows management'
Et quelle émotion quand on les découvre ces fonctions control, bien cachées qu'elles sont sous 'windows management'
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Re: [R] obtenir la position d'un contrôle
ah ben oui, je suis zému
!
bon, merci pour la leçon d'anglais.
mais étant donné mon niveau en Autoit, étant axé création GUI, c'est là que j'ai cherché un GuiCtrlGetPos ... hypothétique, sans élargir mon champ de vision !
donc merci à tous et en particulier à Ahbadiane pour sa sobriété efficace
à+
bon, merci pour la leçon d'anglais.
mais étant donné mon niveau en Autoit, étant axé création GUI, c'est là que j'ai cherché un GuiCtrlGetPos ... hypothétique, sans élargir mon champ de vision !
donc merci à tous et en particulier à Ahbadiane pour sa sobriété efficace
à+
Re: [..] Obtenir la position d'un contrôle
Bonjour
je reviens à la charge :
-j'essaie l'exemple donné dans l'aide pour ControlGetPos ... en modifiant le nom du control qui est Edit chez moi et non Edit1 : Erreur car ne renvoie pas d'array.
-je corrige le titre en "Sans titre - Bloc-notes" qui est le titre de la fenêtre bloc-note chez moi : erreur, pas de retour d'array.
-j'essaie un ControlSetText ... ne fonctionne pas non plus
mon problème :
au départ on connaît évidemment(!) les dimensions d'un control (label, edit...)
mais avec $WS_SIZEBOX une fois la fenêtre redimensionnée comment trouver les nouvelles dimensions ?
si quelqu'un a un exemple fonctionnel de ControlGetPos je suis preneur
Merci
je reviens à la charge :
-j'essaie l'exemple donné dans l'aide pour ControlGetPos ... en modifiant le nom du control qui est Edit chez moi et non Edit1 : Erreur car ne renvoie pas d'array.
-je corrige le titre en "Sans titre - Bloc-notes" qui est le titre de la fenêtre bloc-note chez moi : erreur, pas de retour d'array.
-j'essaie un ControlSetText ... ne fonctionne pas non plus
mon problème :
au départ on connaît évidemment(!) les dimensions d'un control (label, edit...)
mais avec $WS_SIZEBOX une fois la fenêtre redimensionnée comment trouver les nouvelles dimensions ?
si quelqu'un a un exemple fonctionnel de ControlGetPos je suis preneur
Merci
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] Obtenir la position d'un contrôle
J'en conclus donc que c'est un controle que tu as placé toi-même dans une gui, alors dans ce caspapami a écrit :au départ on connaît évidemment(!) les dimensions d'un control (label, edit...)
Code : Tout sélectionner
ControlGetPos ( $magui, "", $moncontrole)Pour le redimensionnement, si la position du controle change alors tu es évidemment obligé de la récupérer de nouveau par un ControlGetPos (ou par un WinGetPos si tu as défini une position fixe du controle par rapport à un des bords de la gui avec un $GUI_DOCKtruc)
Tu peux surveiller ça avec un $GUI_EVENT_RESIZED dans la boucle While principale
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Re: [..] Obtenir la position d'un contrôle
oui c'est ce que je fais, mais mon erreur venait de la présentation de la macro qui indique ControlGetPos ( "title", "text", controlID ) ... et avec un "titre" de fenêtre je n'arrivais à rien !
avec ton aide et ton exemple c'est bon ! (avec l'id de la GUI donc et non le titre de la fenêtre)
donc merci beaucoup
avec ton aide et ton exemple c'est bon ! (avec l'id de la GUI donc et non le titre de la fenêtre)
donc merci beaucoup

