15,978
社区成员
发帖
与我相关
我的任务
分享
BOOL CMyDlg::OnInitInstance()
{
...
RECT rc;
rc.bottom=150;
rc.left=100;
rc.right=150;
rc.top=100;
CButton btn;
btn.Create(_T("btn"),WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,rc,this ,100);
HWND hd=btnn.GetSafeHwnd();
btnn.Detach();
return TRUE;
}
BOOL CMyDlg::OnInitInstance()
{
...
RECT rc;
rc.bottom=150;
rc.left=100;
rc.right=150;
rc.top=100;
CButton btn;
btn.Create(_T("btn"),WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,rc,this ,100);//100是控件ID
HWND hd=btnn.GetSafeHwnd();
btnn.Detach();//btnn是局部变量 到下面的括号将要析构
btn.Attach(hd);
btn.ShowWindow(SW_NORMAL);//这句不管加上还是不加上 都不显示按钮 为什么?
//怎样才能显示这个窗口
return TRUE;
}
RECT rc;
rc.bottom=150;
rc.left=100;
rc.right=150;
rc.top=100;
CButton tmpbtn;
tmpbtn.Create(_T("btn"),WS_CHILD ¦WS_VISIBLE ¦BS_PUSHBUTTON,rc,this ,100);//100是控件ID
HWND hd=tmpbtn.GetSafeHwnd();
tmpbtn.UnsubclassWindow();
// tmpbtn.Detach();//btnn是局部变量 到下面的括号将要析构
m_btn.SubclassWindow(hd);
// m_btn.Attach(hd);
// m_btn.ShowWindow(SW_NORMAL);//这句不管加上还是不加上 都不显示按钮 为什么?
//怎样才能显示这个窗口
BOOL CMyDlg::OnInitInstance()
{
...
RECT rc;
rc.bottom=150;
rc.left=100;
rc.right=150;
rc.top=100;
CButton tmpbtn;
tmpbtn.Create(_T("btn"),WS_CHILD ¦WS_VISIBLE ¦BS_PUSHBUTTON,rc,this ,100);//100是控件ID
if(NULL!= m_btn.GetSafeHwnd())//确保m_btn为成员变量,而且为空。
m_btn.Detach();
m_btn.Attach(tmpbtn.Detach());
m_btn.ShowWindow(SW_NORMAL);//这句不管加上还是不加上 都不显示按钮 为什么?
//怎样才能显示这个窗口
return TRUE;
}