VC++做界面,如何实现:不选中复选框时使一个编辑框变灰不能输入,选中后可输入?

我是这么做的:编辑框的ID是IDC_EDIT1,复选框的ID是IDC_PPCS我现在编辑框和复选框所在对话框(非模态)的所属类中增加一个成员变量,类型为BOOL,变量名叫... 我是这么做的:
编辑框的ID是IDC_EDIT1,复选框的ID是IDC_PPCS
我现在编辑框和复选框所在对话框(非模态)的所属类中增加一个成员变量,类型为BOOL,变量名叫m_Judge1
然后在为复选框增加单击的响应函数,响应函数代码如下:
void CMenuYX::OnPpcs() //创建复选框单机响应函数
{ m_Judge1=checkDlgButton(IDC_PPCS,BST_CHECKED)//判断复选框是否被选中
if(m_Judge1)
GetDlgItem(IDC_EDIT1)-> EnableWindow(true)
else
GetDlgItem(IDC_EDIT1)-> EnableWindow(false)
}
调试不报错,但实现不了,一直是可输入状态。求教啊~~
展开
 我来答
zml81620
2012-07-22 · TA获得超过116个赞
知道小有建树答主
回答量:97
采纳率:0%
帮助的人:69.7万
展开全部
你可以这么做
CButton *pCheck ;
pCheck = (CButton *)this->GetDlgItem(IDC_PPCS) ;
if( pCheck )
m_bJudge = p->GetCheck() ;
希望能对你有所帮助。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帅幻迩3N
2012-08-02 · TA获得超过682个赞
知道小有建树答主
回答量:486
采纳率:100%
帮助的人:297万
展开全部
改成下面这样就可以了

void CMenuYX::OnPpcs()
{
GetDlgItem(IDC_EDIT1)-> EnableWindow(IsDlgButtonChecked(IDC_PPCS)) ;
}
追问
你好,您的方法是可用的。但在运行初始时,复选框没选中时编辑框是可输入的,您能再指点一下吗?谢谢!
追答
在对话框的OnInitDialog()里面调用一下OnPpcs();
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式