[Résolu] Créer une CMainFrame qui ne prend pas le focus à l'ouverture

Créer une CMainFrame qui ne prend pas le focus à l'ouverture [Résolu] - C++ - Programmation

Marsh Posté le 18-10-2005 à 16:02:57    

bonjour,
 
   j'aimerais savoir comment faire pour créer une frame de type CMainFrame qui ne prend pas le focus à son ouverture/affichage. Actuellement, lorsque j'ouvre ma frame, elle chope le focus et si je suis entrain d'écrire dans une autre application elle prend la main.J'ai regardé les styles, mais il n'en existe pas qui permettent cela apparement.
 
   Merci d'avance.


Message édité par snipix le 18-10-2005 à 16:37:30

---------------
La raison du plus fort est toujours la plus forte.... Parce que c'est comme ça NA !
Reply

Marsh Posté le 18-10-2005 à 16:02:57   

Reply

Marsh Posté le 18-10-2005 à 16:14:28    

MSDN: SetFocus()


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 18-10-2005 à 16:16:59    

C'est exactement l'inverse que je veux, je ne veux pas donner le focus à ma frame à sa création, mais le veux que la fenêtre qui possède le focus le garde lorsque ma frame est affichée.


---------------
La raison du plus fort est toujours la plus forte.... Parce que c'est comme ça NA !
Reply

Marsh Posté le 18-10-2005 à 16:18:48    

Tu veux peut être dire qu'il faudrait que je récupère la fenêtre qui à la focus avant l'ouverture et que je la reforce apres l'ouverture ??
 
C'est un peu crade ça non ??


---------------
La raison du plus fort est toujours la plus forte.... Parce que c'est comme ça NA !
Reply

Marsh Posté le 18-10-2005 à 16:22:53    

Cette solution (HWND hWnd = ::SetFocus(NULL) avant et ::SetFocus(hWnd) après) fonctionne mais je la trouve un peu bof, y'a pas un autre moyen ??


Message édité par snipix le 18-10-2005 à 16:24:00

---------------
La raison du plus fort est toujours la plus forte.... Parce que c'est comme ça NA !
Reply

Marsh Posté le 18-10-2005 à 16:31:08    

snipix a écrit :

Tu veux peut être dire qu'il faudrait que je récupère la fenêtre qui à la focus avant l'ouverture et que je la reforce apres l'ouverture ??

exactement
 

snipix a écrit :


C'est un peu crade ça non ??


si tu veux pas faire crade, faut pas bosser avec les MFC [:petrus75]
 
sinon, tu peux envoyer un ShowWindow(SW_SHOWNOACTIVATE) à la création de ta CFrameWnd (et pas CMainFrame comme tu l'as dit, CMainFrame est le nom de l'objet de classe CFrameWnd), ça affice la Frame, mais sans l'activer


Message édité par Harkonnen le 18-10-2005 à 16:31:25

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 18-10-2005 à 16:32:13    

Effectivement, il s'agit d'un CFrameWnd, désolé, je vais essayer cela, merci !


---------------
La raison du plus fort est toujours la plus forte.... Parce que c'est comme ça NA !
Reply

Marsh Posté le 18-10-2005 à 18:14:36    

Il y aurait pas un flag WS quelque chose à passer au constructeur de CFrameWnd pour éviter de lui donner le focus?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed