Toolbar [Résolu]

Signaler
Messages postés
29
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 janvier 2012
-
Messages postés
29
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 janvier 2012
-
Je voudrais placer plusieurs Toolbar cote à cote, mais je n'arrive pas à les positionner, elles se calent systématiquement à gauche de la zone client de la fenetre principale et se chevauchent. Je les génère avec CreateWindowEx et les positionne avec MoveWindow, rien à faire la position est ignorée.

hBarreDes= CreateWindowEx(0,TOOLBARCLASSNAME,NULL,
WS_CHILD | WS_VISIBLE | TBSTYLE_FLAT,0,0,0,0,
hParent,NULL,hThisInstance,NULL);

Dans le traitement de WM_PAINT (après récupération de la zone client par GetClientRect):

MoveWindow(hBarreDes, RectClient.left+200, RectClient.top+50, 400, 50, TRUE);

Tous les exemples que j'ai trouvés traitent une barre unique, là pas de pb ça marche nickel. Je veux des barres séparées pour pouvoir les activer contextuellement.

Merci de votre aide

5 réponses

Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

Tu peux peut-être coder une wndproc pour ces contrôles et empêcher les fonctions par defaut.

@++
Messages postés
1
Date d'inscription
vendredi 25 mars 2011
Statut
Membre
Dernière intervention
25 mars 2011

non, tu peux en mettre bien sur autant que tu veux : j'en ai 4 en dockable

Tu peux demander sur le groupe des pros ( il y a les créateurs de Windows...)

news://nntp.aioe.org/fr.comp.os.ms-windows.programmation
ou http://tinyurl.com/yjr9nu3 par Google
où c'est classique
Messages postés
29
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 janvier 2012

OK merci, je pense que la toolbar de base de l'API doit être prévue pour être unique comme le menu. Au pire il faut créer une fenetre genérique avec des boutons et les gérer.

a++
Messages postés
29
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 janvier 2012

OK merci, je vais y aller
Messages postés
29
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 janvier 2012

En fait la solution est vraiment bête, il suffit de spécifier CCS_NORESIZE dans le style pour mettre la toolbar où on veut, sinon par défaut elle se cale en haut à gauche du client et occupe toute la largeur (toutes les toolbar crées se superposent!).

a+