代码如下:CLogProperties LogProperties("Test Properties");
//CLogProperties是继承CPropertySheet的类,在构造函数中会调用AddPage添加页面LogProperties.Create(NULL,"test",WS_CHILD | WS_VISIBLE,CRect(10,10,10,10),pParentWnd,IDC_TestListCtrl);... ...CWnd *AAA = LogProperties.GetDlgItem(ID_APPLY_NOW);
AAA取不到应用按钮的句柄,为空。
如上述代码的意思,请问怎样才能取到属性页中[应用]按钮,对其进行操作?
//CLogProperties是继承CPropertySheet的类,在构造函数中会调用AddPage添加页面LogProperties.Create(NULL,"test",WS_CHILD | WS_VISIBLE,CRect(10,10,10,10),pParentWnd,IDC_TestListCtrl);... ...CWnd *AAA = LogProperties.GetDlgItem(ID_APPLY_NOW);
AAA取不到应用按钮的句柄,为空。
如上述代码的意思,请问怎样才能取到属性页中[应用]按钮,对其进行操作?
CWnd *AAA = LogProperties.GetParent()->GetDlgItem(ID_APPLY_NOW);
http://topic.csdn.net/u/20081225/17/a7e43742-d1cc-4df9-9525-588f0d79c31c.html
http://www.vckbase.net/document/viewdoc/?id=398
Property3文件夹下更改和添加下面的代码:void CProperty3Dlg::OnButton1()
{
CMySheet sheet("属性页对话框");
CPage1 page1;
CPage2 page2;
sheet.AddPage( &page1 );
sheet.AddPage( &page2 ); sheet.Create( );
sheet.ShowWindow(SW_SHOW);
CWnd* pWnd = &sheet.m_button; //这个位置改成楼主的CWnd *AAA = sheet.GetDlgItem(ID_APPLY_NOW); 也可以取到值 pWnd->ShowWindow(SW_HIDE); MSG msg; //定义消息 一下是锁定窗口 防止函数退出后窗体销毁
m_bContiune=TRUE;
for(int ii=0;ii<2;ii++)
{
if( m_bContiune == TRUE )
{
ii = 0; //状态改变退出
GetMessage( &msg, NULL,0, 0 );//检查消息 TranslateMessage(&msg); //解释消息
DispatchMessage(&msg); //分配消息
}
}
}BOOL CProperty3Dlg::DestroyWindow()
{
m_bContiune = FALSE;
return CDialog::DestroyWindow();
}void CProperty3Dlg::OnClose()
{
m_bContiune = FALSE;
CDialog::OnClose();
}void CProperty3Dlg::OnOK()
{
m_bContiune = FALSE;
CDialog::OnOK();
}void CProperty3Dlg::OnCancel()
{
m_bContiune = FALSE;
CDialog::OnCancel();
}
我记得是DoModal的时候有!
你可能需要自己create一个这个按钮!