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)
}
调试不报错,但实现不了,一直是可输入状态。求教啊~~ 展开
编辑框的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)
}
调试不报错,但实现不了,一直是可输入状态。求教啊~~ 展开
展开全部
你可以这么做
CButton *pCheck ;
pCheck = (CButton *)this->GetDlgItem(IDC_PPCS) ;
if( pCheck )
m_bJudge = p->GetCheck() ;
希望能对你有所帮助。
CButton *pCheck ;
pCheck = (CButton *)this->GetDlgItem(IDC_PPCS) ;
if( pCheck )
m_bJudge = p->GetCheck() ;
希望能对你有所帮助。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成下面这样就可以了
void CMenuYX::OnPpcs()
{
GetDlgItem(IDC_EDIT1)-> EnableWindow(IsDlgButtonChecked(IDC_PPCS)) ;
}
void CMenuYX::OnPpcs()
{
GetDlgItem(IDC_EDIT1)-> EnableWindow(IsDlgButtonChecked(IDC_PPCS)) ;
}
追问
你好,您的方法是可用的。但在运行初始时,复选框没选中时编辑框是可输入的,您能再指点一下吗?谢谢!
追答
在对话框的OnInitDialog()里面调用一下OnPpcs();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询