[R] Modifier le titre d'une fenetre créée soi-même

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

[R] Modifier le titre d'une fenetre créée soi-même

#1

Message par sksbir »

Bonjour

ça avait l'air tout bête : utiliser guicreate pour créer une fenetre, puis utiliser une autre fonction pour modifier le titre à volonté à l'aide du handle ( la variable $TEST dans mon exemple).

Code : Tout sélectionner

$TEST=GUICreate("ma fenetre a moi", $XSIZE, $YSIZE)
Sauf que...

- AutoItWinSetTitle ( "newtitle" ) ne fonctionne pas ( prévu pour changer le titre "interne" de la fenetre...)
- GUICtrlSetData n'est pas prévue pour un GUI, mais seulement pour les objets de type Group, Label, Button, Checkbox, Radio, Combo, List, Input, Edit, TabItem
- WinSetTitle ( "title", "text", "newtitle" ) fonctionnera sans doute, mais j'avoue que j'ai un peu de mal à raccorder cette fonction avec le handle précédemment créé ( $TEST )
> je n'ai pas envie de rechercher ma fenetre par son titre, c'est trop hasardeux.
> rechercher la fenetre par sa classe est une mauvaise idée : toutes les fenetres autoit sont de la classe "AutoIt v3 GUI"
> les autres critères décrits dans "Advanced Window Descriptions" m'échappent un peu.



j'ai passé pas mal de temps à rechercher avant de poster ici, mais je vous laisse imaginer la recherche avec les mots clés comme "modifier titre autoit"...

Bref, si quelqu'un a une idée , je suis preneur.
Merci d'avance :)
Modifié en dernier par sksbir le lun. 23 nov. 2009 16:02, modifié 1 fois.
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Modifier le titre d'une fenetre créée soi

#2

Message par jbnh »

Bonjour bonjour,

Si ! normalement winsettitle est la solution. L'argument title peut avoir plusieurs définitions : voir ici.

A vous de repérer les infos grace au votre petit logociel autoit window info.
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Avatar du membre
DJSIR
Niveau 8
Niveau 8
Messages : 583
Enregistré le : mar. 01 juil. 2008 15:16
Localisation : 76, Le HAVRE (in the DJSIR World)
Status : Hors ligne

Re: [..] Modifier le titre d'une fenetre créée soi-même

#3

Message par DJSIR »

Moi, pour un script dont le nom de fenêtre changeait sans arrêt (je ne pouvais le récupérer), j'ai créé un label caché (j'avais mis un message binaire dedans) et avec la fonction :
WinSetTitle("", "contenu du label caché", "nouveau titre")

C'est vraiment simple !

EDIT : :evil: jbnh, t'a posté en même temps que moi !
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)

[Func] ProgressBar, aller plus loin
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Modifier le titre d'une fenetre créée soi-même

#4

Message par Tlem »

Une toute petite idée alors ... :lol:

Code : Tout sélectionner

WinSetTitle ($Test, "", "newtitle" )
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
DJSIR
Niveau 8
Niveau 8
Messages : 583
Enregistré le : mar. 01 juil. 2008 15:16
Localisation : 76, Le HAVRE (in the DJSIR World)
Status : Hors ligne

Re: [..] Modifier le titre d'une fenetre créée soi-même

#5

Message par DJSIR »

Ça marche ça ?!?
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)

[Func] ProgressBar, aller plus loin
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Modifier le titre d'une fenetre créée soi-même

#6

Message par sksbir »

Tlem a écrit :Une toute petite idée alors ... :lol:

Code : Tout sélectionner

WinSetTitle ($Test, "", "newtitle" )

Excellent!! autoit continue à me surprendre agréablement :)

La solution était tout en bas de la doc sur Winsettitle, dans la section "Window Handles / HWNDs ". Moralité : lire la doc jusqu'au bout :lol:

@DSJIR : oui, ça fonctionne .

Merci à tous, les uns pour la rapidité et Tlem pour la bonne solution :)
Répondre