发布网友 发布时间:2022-05-13 06:17
共4个回答
懂视网 时间:2022-05-13 10:38
来源:http://bbs.csdn.net/topics/390973895有三种方法:
第一种
是你的CPropertyPage在create的时候把原来的那个CPropertySheet 类对象指针作为父窗口传进去
CPropertyPage::Create(UINT nIDTemplate, CWnd* pParentWnd = NULL)然后在菜单command消息处理中采用
CPropertySheet *pParent = (CPropertySheet *)GetParent();
pParent->SetActivePage(iPage);第二种
是在你的CPropertyPage类中保存CPropertySheet 对象指针,CPropertyPage对象构造的时候传进去,然后在菜单command消息处理中直接通过这个指针SetActivePage
第三种
是在你的CPropertyPage类中保存CPropertySheet 对象的窗口句柄,CPropertyPage对象构造的时候传进去,然后在菜单command消息处理中通过这个句柄给CPropertySheet 发送自定义消息,CPropertySheet 收到这个消息的时候再SetActivePage
热心网友 时间:2022-05-13 07:46
直接在对话框中改是没用的。追答没有更简单的方法,你必须全部控件都改。我自己也做过这方面的程序,我每个控件都单独改,这样的程序BUG更少,编程有时没有捷径,就是比较累,高手只是BUG少,有自己的类库。
你想如果只设置属性页,那也仅仅是属性页窗口的DC里的字体改变而已,而它的子窗口,即所有控件它的DC肯定和它独立肯定也必须改。
你换个思路所有窗口的最顶层父窗口是SHELL窗口,难道你的程序窗口的字体大小想依赖这样的父窗口吗,显然不是,所以不要嫌麻烦。呵呵。
热心网友 时间:2022-05-13 09:04
建议查看孙鑫的那本VC++书中的字体属性修改和属性页部分,或许可以得到你想要的东西。热心网友 时间:2022-05-13 10:39
1.触发action的方法,select有个onchange事件,可以在事件绑定函数中发起一个对于action的ajax请求.