您的位置:程序门 -> vc/mfc -> 基础类



100份求助,请问如何控制对话框中控件的状态


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


100份求助,请问如何控制对话框中控件的状态[已结贴,结贴人:speedzzx0000]
发表于:2008-01-19 16:35:01 楼主
我的对话框是popup形式的,里面有两个命令按钮,我想控制它们变换可以响应和不能响应(灰色)两种状态,请问该怎么做?
我用on_update_command_ui(idc_start_measure,onupdatastartbutton)设置发现不行,有别的方法吗?
发表于:2008-01-19 16:45:491楼 得分:10
何谓“命令按钮”?是一般的button控件吗?
如果是一般控件,可以分别定义一个成员变量,然后用enablewindow控制。
发表于:2008-01-19 16:49:152楼 得分:10
bool   enablewindow(   bool   benable   =   true   );
发表于:2008-01-19 16:50:003楼 得分:10
enablewindow就可以控制了
发表于:2008-01-19 16:50:234楼 得分:10
控制是否响应用getdlgitem(idc_button1)-> enablewindow(true)或enablewindow(false)就行了啊,100分下得有点重,呵呵
发表于:2008-01-19 17:06:085楼 得分:5
来晚了,都让楼上给说完了
发表于:2008-01-19 17:38:406楼 得分:10
on_update_command_ui只针对框架窗口(比如sdi/mdi),对对话框窗口无效,而且只作用于菜单和工具栏,对按钮无效。
enablewindow足够了
发表于:2008-01-19 19:42:527楼 得分:10
getdlgitem(idc_button1)->   enablewindow(true)
getdlgitem(idc_button1)-> enablewindow(false)
发表于:2008-01-19 19:45:298楼 得分:5
呵呵
发表于:2008-01-19 20:38:479楼 得分:10
标准win32编程的setwindowlong()也可以,麻烦些。
发表于:2008-01-19 21:02:5910楼 得分:10
来晚了,这个我也知道,呵呵
getdlgitem(idc_button1)得到控件指针  
再用   enablewindow(true/false)   控制状态

发表于:2008-01-19 22:24:2711楼 得分:10
上面说的方法是正解之一
getdlgitem(idc_button1)-> enablewindow(true)  
getdlgitem(idc_button1)-> enablewindow(false)

正解之二如下:
还可以在classwizard中为你的按钮定义一个cbutton的变量如m_but1,再调用m_but1.enablwindow(false)


快速检索

最新资讯
热门点击