begin process at 2008 09 06 03:01:02
1 237 631 membres
31 nouveaux aujourd'hui
14 313 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : WS_POPUP et focus [ Archives / API ] (vecchio56)

WS_POPUP et focus le 01/05/2006 16:09:32

vecchio56
(Admin CS)
C'est un problème assez compliqué a expliquer... J'ai remarqué que les menus (obtenus par exemple avec TrackPopupMenu) sont des fenêtre popup (avec le style WS_POPUP). Ce que je ne comprends pas, c'est que malgré tout la fenêtre parente garde le focus alors qu'une fenêtre popup a été créée (la Title Bar reste bleue); J'essaie de faire la même chose (mais sans TrackPopupMenu car ce n'est pas un menu que je fais), mais dès que je crée une fenêtre popup, la fenêtre principale perd le focus (sa barre de titre devient grise). Je cherche donc le moyen de faire comme TrackPopupMenu Si quelqu'un a déja fait ca, merci de m'aider

Re : WS_POPUP et focus le 01/05/2006 18:12:25

nightlord666
Membre Club
Tu a essayé de faire un SetFocus après la création de ta fenêtre WS_POPUP ?

Re : WS_POPUP et focus le 01/05/2006 18:15:09

yoyo269
Membre Club
SetFocus ne te suffirait pas ?

YOYO, @+.

"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"


Re : WS_POPUP et focus le 01/05/2006 18:56:23

vecchio56
(Admin CS)
Ben dès que je clique a nouveau sur la fenêtre popup, elle perd à nouveau le focus... Ce que je veux faire, c'est comme dans Office, le menu qui apparait dans la commande Undo/Redo de la barre d'outils

Re : WS_POPUP et focus le 01/05/2006 18:58:49

nightlord666
Membre Club
Tu a essayé de faire une fenêtre avec le style WS_EX_TOOLWINDOW ? (c'est un style extended, donc à utiliser avec CreateWindowEx)

Re : WS_POPUP et focus le 01/05/2006 19:01:56

vecchio56
(Admin CS)
Oui j'ai essayé ca, et pas mal d'autres trucs. Le seul truc que j'ai c'est de donner le focus a la fenêtre parente et d'enpêcher la popup de devenir active (je retourne MA_NOACTIVATE quand je recois WM_ACTIVATE). Par contre ca pose d'autres problèmes que j'ai du mal à régler

Re : WS_POPUP et focus le 01/05/2006 19:10:51

BruNews
(Admin CS)
Le code interne de TrackPopupMenu est assez compliqué (je viens d'aller voir).
La fenêtre mère est illico sous classée, pointeur sur le menu lui est refilé, remise de la bonne proc quand suppression du menu.
C'est un énorme souk alors pas le temps d'en faire le détail.

ciao...
BruNews, MVP VC++

Re : WS_POPUP et focus le 01/05/2006 19:16:05

vecchio56
(Admin CS)
D'après ce que j'ai compris, c'est la fenêtre parente qui a la capture de la souris. Tu peux me confirmer cela?

Re : WS_POPUP et focus le 01/05/2006 19:25:46

racpp
(Admin CS)
Salut, vecchio56 >> Tu ne veux pas utiliser une petite boite de dialogue créée avec CreateDialog()? La fenêtre mère peut garder le focus et la boite reste toujours visible.

Re : WS_POPUP et focus le 01/05/2006 19:39:55

BruNews
(Admin CS)
CreateDialog semble une bonne piste.

vecchio > semble bien mais vraiment pas le temps de lire tous les fichiers sources. Note tout ce que tu voudrais consulter et on fera cela une autre fois.

ciao...
BruNews, MVP VC++


[Page 1 Page 2 Page 3]
Classé sous : focus, fenêtre, ws, popup, trackpopupmenu

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS