CChildDlg* m_pChildDlg;BOOL CMainDlg::OnInitDialog()
{
CDialog::OnInitDialog(); m_pChildDlg = new CDlgPop;
m_pChildDlg->Create(IDD_DIALOG1, this);
m_pChildDlg->ShowWindow(SW_SHOW);
m_pChildDlg->GetDlgItem(IDC_EDIT1)->SetFocus();//想让子窗口具有输入光标
return TRUE;
}
我的目的是想让子窗口覆盖父窗口的一部分,而且让子窗口具有输入光标,如何实现?顺便问一下:在父窗口和子窗口中都有一些控件每个控件都有一个快捷键,当界面出现时用户看到的是一个整体,但按快捷键出现问题当输入光标在父窗口时只能父窗口接收到快捷键,反之只能子窗口接到快捷键,有没有好的方法解决?
{
CDialog::OnInitDialog(); m_pChildDlg = new CDlgPop;
m_pChildDlg->Create(IDD_DIALOG1, this);
m_pChildDlg->ShowWindow(SW_SHOW);
m_pChildDlg->GetDlgItem(IDC_EDIT1)->SetFocus();//想让子窗口具有输入光标
return TRUE;
}
我的目的是想让子窗口覆盖父窗口的一部分,而且让子窗口具有输入光标,如何实现?顺便问一下:在父窗口和子窗口中都有一些控件每个控件都有一个快捷键,当界面出现时用户看到的是一个整体,但按快捷键出现问题当输入光标在父窗口时只能父窗口接收到快捷键,反之只能子窗口接到快捷键,有没有好的方法解决?
if(message == WM_APP)
{
// 这里都是你的代码:
m_pChildDlg = new CDlgPop;
m_pChildDlg->Create(IDD_DIALOG1, this);
m_pChildDlg->ShowWindow(SW_SHOW);
m_pChildDlg->GetDlgItem(IDC_EDIT1)->SetFocus();//想让子窗口具有输入光标
}
return FALSE;
看看
return FALSE;
看看CDlgPop的OnInitDialog()里面做试试这两种方法试过不好使。
--------------------------------
BOOL CMainDlg::OnInitDialog()
{
CDialog::OnInitDialog(); CDlgPop DlgPop;
DlgPop.DoModal();
return TRUE;
}这样你说的方法就可以。
BOOL CMainDlg::OnInitDialog()
{
CDialog::OnInitDialog();
PostMessage(WM_APP);
return TRUE;
}LRESULT CDlgDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
if(message == WM_APP)
{
m_pChildDlg = new CDlgPop;
m_pChildDlg->Create(IDD_DIALOG1, this);
m_pChildDlg->ShowWindow(SW_SHOW);
m_pChildDlg->GetDlgItem(IDC_EDIT1)->SetFocus();//想让子窗口具有输入光标
return 0;
} return CDialog::WindowProc(message, wParam, lParam);
}
我把子窗口的属性改为child 就可以了。以前是popup.