Page 1 sur 1

[R] Centrer le texte de bouton + tailles bouton variable.

Posté : lun. 23 juil. 2012 00:46
par satanico64
Bonsoir mssieurs dames,

Suite a une précédente intervention ICI, je suis un train de refaire une barre d'outil a l'aide des commandes _GUICtrlToolbar_Create, _GUICtrlToolbar_AddButton etc...

Déjà un premier étonnement la dessus, je suis très étonne de trouver si peu d'info sur les _GUICtrlToolbar_Create dans les forums, peu utilisé ?
:arrow: Je précise que je souhaite une barre dont les boutons ne sont pas des images, mais juste du texte.
Et tous les exemples trouvés sur les forums concernent des boutons-images.

Je vous livre l'ebauche pseudo-fonctionnelle, du code:
► Afficher le texte
En gros ce qui est utile commence sous :
; creation de la barre
J'ai laissé des commentaires et ne vous inquietez pas sur tous les includes ils concernent d'autres implémentations :)

Et maintenant, mes 2 problèmes probablement tout simples:
1 comment center le texte de mes boutons ? (verticalement et horizontalement)
2 Comment avoir des boutons de taille différentes ? $BTNS_AUTOSIZE ne donne rien (je ne dois pas m'en servir correctement).
Ma solution ultime sera peut être de créer des gifs a partir du texte de mes boutons, ceux ci devant être fixe et des toolbars comme ça j'en ai vu quelques une et super bien faites.

En vous remerciant.
Nicolas.

Re: [..]

Posté : lun. 23 juil. 2012 00:50
par Tlem
Votre titre n'est pas conforme.

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : ven. 27 juil. 2012 04:58
par TopXm
Hello :)

Vu que ce ne sont que des boutons textes dans une toolbar pourquoi tu ne créés pas du coup des boutons directement, plutôt qu'une toolbar où tu vas galérer ?
Bon j'avoue je cherche toujours la facilité :)
► Afficher le textebuttons

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : mar. 31 juil. 2012 00:14
par satanico64
salut,

en fait ma je crée une toolbar avec x boutons. Mes utilisateurs, pourront les désactiver ou non (par exemple pour des boutons inutiles pour eux).

Donc en gros je cherche à pouvoir redessiner ma barre, une fois un bouton désactivé (ou activé).
Et si je dois préciser les coordonnées x,y du bouton ça va pas le faire.
Surtout pour la taille de mon gui principal

Je sais que c'est faisable avec :

$htoolbar = _GUICtrlToolbar_Create ($principal)
_GUICtrlToolbar_AddButton($hToolbar, $NEW,1)
_GUICtrlToolbar_DeleteButton(...

(mais voit la galère ! :? je bataille dessus depuis 2 semaines, c'est pas simple pour moi de piger les _wm_notify() ou my_wm_command()

Sinon si vous avez des outils 'natifs' autoit pour créer une barre ou je peux simplement enlever/ajouter des boutons et redessiner mon gui, je prend ! :)

enfin voila quoi !

ps: j'ai en fait un code actuellement en place est basé simplement sur des GUICtrlCreateButton et très fonctionnel, mais bon il est figé sur x boutons qui ne bougent pas. Et je veux pouvoir ajouter/supprimer des boutons. D'ou mes recherches la dessus.

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : mar. 31 juil. 2012 13:51
par Alaghir
De toute façon, si tu veux créer un bouton de manière dynamique, il te faudra préciser ses coordonnées.

Tu peux récupérer les données du dernier bouton existant, et jouer avec en y rajoutant l'espace que tu souhaites.

ça te donne une formule du style :

$x2 = $x1 + $l1 + $esp

avec : $x2 la position x du bouton que tu veux créer, $x1 la position x du dernier bouton de ta barre, $l1 la taille horizontale de ce bouton, et $esp l'espace que tu comptes mettre entre chaque bouton.


Je ne suis pas assez expert sur AutoIt pour te pondre un code de but en blanc, mais je pense qu'avec cette méthode tu devrais pouvoir t'en sortir :).

Pour ce qui est de la taille de ta fenêtre c'est un petit peu la même chose :
$fl = $x2 + $l2 + $bord

$fl est la largeur de ta fenêtre, $x2 la position x de ton dernier controle, $l2 la longueur de ton dernier controle, $bord l'espace que tu souhaites mettre entre ton dernier contrôle et le bout horizontal de la barre d'outil.

Voilà pour la méthode je dirai :). J'essaierai de voir ce soir si le temps que j'aie me le permet comment procéder en autoit :).

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : mer. 01 août 2012 12:08
par mikell
Voilà un exemple de pseudo-toolbar construite juste avec des machins compréhensibles :mrgreen:
Dans l'array de départ tu ne définis pour chaque bouton que le texte et la fonction à exécuter
La taille du bouton est ajustée automatiquement
Clic droit => tu peux enlever ou remettre les boutons
Ce code est très souple et facilement adaptable
► Afficher le texte

Re: A

Posté : mer. 01 août 2012 12:15
par satanico64
Et beh, c'est très interessant tout ça merci bien !!!

Alors à savoir que j'ai pas chomé non plus de mon coté, j'ai bataillé sur la piste que tu m'avais laissé et je suis arrivé a faire ce que je voulais, juste a base de GUICtrlCreateButton etc, avec ajout/suppression, redessinage de gui etc

L'essentiel marche j'ai juste manqué de temps avec le taf .

Cependant, je te rassure tu n'a pas bossé pour rien !

En effet, je feuillette a peine ton code et j'ai déjà des choses qui m'étonnent:

$hDC = _WinAPI_GetDC($gui) => Bigre ! qu'est ce donc-ce ? Apparemment le DC (donc device context), est une notion autre que le Handle....

$tSize = _WinAPI_GetTextExtentPoint32($hDC, $text) => énorme je connaissait pas.

Bon je vais étudier tout ca !
merci !!

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : mer. 01 août 2012 12:19
par satanico64
Tiens j'ai l'impression qu'un message a disparu entre temps...


=> Pour Mikell, ton code correspond juste parfaitement à ce que je cherche !
Je sens que je vais m'amuser !!!

Merci beaucoup !
Nicolas.

Re: [..] Centrer le texte de bouton + tailles bouton variabl

Posté : mer. 01 août 2012 12:37
par mikell
satanico64 a écrit : ton code correspond juste parfaitement à ce que je cherche !
Alors un petit [R] dans le titre du premier sujet ?

Note : oui j'ai effacé mon 1er message, j'avais fait hier soir une 1ère mouture mais ça correspondait pas au cahier des charges alors => viré :twisted:
pour la taille des boutons les valeurs sont ajustées en fonction de la police par défaut de mon PC, avec une police différente faudra les adapter ou carrément utiliser la fonction StringSize de Melba23 (forum US)

Re: [R] Centrer le texte de bouton + tailles bouton variable

Posté : jeu. 02 août 2012 10:16
par satanico64
Après avoir étudié le code, il est vraiment sympa et bien pensé !

Mettre tout ca dans un tableau c'est vraiment pas mal.

Encore merci.


Problem Solved !