Criar um CDialog no canto da tela
Pergunta
Eu tenho um aplicativo MFC que cria um CDialog. Eu gostaria este CDialog a não aparecer no meio da tela, mas sim para o lado da tela para o seu mal visível ou mesmo minimizado seria bom.
Como posso fazer isso?
Solução
Use SetWindowPos
em sua função OnInitDialog()
, assim:
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;
}
Outras dicas
Você pode usar o sinalizador SW_SHOWMINIMIZED
em ShowWindow(SW_SHOWMINIMIZED)
. (SW_SHOWMAXIMIZED ==> Abre a janela em seu estado minimizado, representando-o como um botão na barra de tarefas)
pDlg->Create(IDD_DLG_ID1,this);
pDlg->ShowWindow(SW_SHOWMINIMIZED);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow