CPropertySheet类中的应用按钮怎么控制他可用??

时间:2022-09-08 14:12:57
就如标题CPropertySheet建立后AddPage(&m_Page1);后,怎么控制其中的应用按钮变为可用状态?

7 个解决方案

#1


汗哦!
是我给的分少了还是?

#2


GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);

#3


这句话要在哪加啊?
比如我在一个点击按钮的事件中加入
CMyPropertySheet  sheet;
sheet.m_Page1.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.m_Page2.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.DoModal();
在编译时没错,但是在运行时报错。
如果直接在CMyPropertyPage1和CMyPropertyPage2或CMyPropertySheet的构造中加也是在编译时没错,但是在运行时报错。
如果在 CMyPropertyPage1::OnInitDialog()和CMyPropertyPage2::OnInitDialog()中也是在编译时没错,但是在运行时报错。
不知道要在哪加了

#4


sheet.GetDlgItem(ID_APPLY_NOW)- >EnableWindow(TRUE);

#5


CPropertyPage::SetModified(BOOL bChanged = TRUE)

#6


谢谢拉,搞出来了,SetModified我开始怎么没看见这个函数的。
强行用GetDlgItem(ID_APPLY_NOW)- >EnableWindow(TRUE);的话VC始终要报错。

#7


CMyPropertySheet sheet;
sheet.m_Page1.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.m_Page2.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.DoModal();
==这两个EnableWindow语句在这里写肯定不行的阿,必须加在属性页的初始化函数中阿

#1


汗哦!
是我给的分少了还是?

#2


GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);

#3


这句话要在哪加啊?
比如我在一个点击按钮的事件中加入
CMyPropertySheet  sheet;
sheet.m_Page1.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.m_Page2.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.DoModal();
在编译时没错,但是在运行时报错。
如果直接在CMyPropertyPage1和CMyPropertyPage2或CMyPropertySheet的构造中加也是在编译时没错,但是在运行时报错。
如果在 CMyPropertyPage1::OnInitDialog()和CMyPropertyPage2::OnInitDialog()中也是在编译时没错,但是在运行时报错。
不知道要在哪加了

#4


sheet.GetDlgItem(ID_APPLY_NOW)- >EnableWindow(TRUE);

#5


CPropertyPage::SetModified(BOOL bChanged = TRUE)

#6


谢谢拉,搞出来了,SetModified我开始怎么没看见这个函数的。
强行用GetDlgItem(ID_APPLY_NOW)- >EnableWindow(TRUE);的话VC始终要报错。

#7


CMyPropertySheet sheet;
sheet.m_Page1.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.m_Page2.GetDlgItem(ID_APPLY_NOW)->EnableWindow(TRUE);
sheet.DoModal();
==这两个EnableWindow语句在这里写肯定不行的阿,必须加在属性页的初始化函数中阿