2009-06-17 4 views
1

J'ai une application MFC qui crée un CDialog. Je voudrais que ce CDialog n'apparaisse pas au milieu de l'écran, mais plutôt sur le côté de l'écran afin qu'il soit à peine visible ou même minimisé serait bon.Créer un CDialog dans le coin de l'écran

Comment est-ce que je peux faire ceci?

Répondre

1

Utilisez SetWindowPos dans votre fonction OnInitDialog(), comme ceci:

BOOL CDlg::OnInitDialog() 
{ 
    CDialog::OnInitDialog(); 
    // (x,y) is the upper-left corner in screen coordinates 
    SetWindowPos(NULL, x, y, 0, 0, SWP_NOSIZE | SWP_NOZORDER); 
    return TRUE; 
} 
1

Vous pouvez utiliser SW_SHOWMINIMIZED drapeau dans ShowWindow(SW_SHOWMINIMIZED). (SW_SHOWMINIMIZED ==> Ouvre la fenêtre dans son état réduit, ce qui représente comme un bouton sur la barre des tâches)

pDlg->Create(IDD_DLG_ID1,this); 
pDlg->ShowWindow(SW_SHOWMINIMIZED); 
+0

Je pense personnellement que cela est beaucoup mieux que de placer la boîte de dialogue dans une position inconfortable. – djeidot