永发信息网

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

答案:3  悬赏:10  手机版
解决时间 2021-04-09 08:26
我是这么做的:
编辑框的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)
}
调试不报错,但实现不了,一直是可输入状态。求教啊~~
最佳答案
改成下面这样就可以了

void CMenuYX::OnPpcs()
{
GetDlgItem(IDC_EDIT1)-> EnableWindow(IsDlgButtonChecked(IDC_PPCS)) ;
}
全部回答
你可以这么做 CButton *pCheck ; pCheck = (CButton *)this->GetDlgItem(IDC_PPCS) ; if( pCheck ) m_bJudge = p->GetCheck() ; 希望能对你有所帮助。
为复选框增加一个ctrol变量,m_check1; ifm_check1.getcheck()) getdlgitem(idc_edit1)-> enablewindow(true) ; else getdlgitem(idc_edit1)-> enablewindow(false);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单选题优质产品之所以要“优价”,根本原因在
3Q
すごい是什么意思
冰雪化春天到初中作文600字
wifi忽略了还能连上么需要密码不
利用如图所示的实验装置可将机械能转化为____
元合信会计师事务所地址在哪,我要去那里办事
中南民族大学在武昌区还是洪山区啊??急 要
现在合肥租房住.怎样提取公积金?
星球大战电影经典台词,两句星球大战中的经典
我国最大的咸水湖和淡水湖分别是A.鄱阳湖、太
光明益生菌酸牛奶中含有跟塑料皮一样的东西一
移动什么时候能支持apple watch3
事业单位改革大刀阔斧,卫生局信息中心改革方
想问一下,每期大乐透都有一二等奖中,, 会
推荐资讯
老婆要离婚,第一次判不离,第二次她请了律师
班主任评语表现不好的,对员工的评价怎么写
十二道锋味里面拔丝地瓜的做法
江门市景贤中学为何要公立民办?是为了收钱吗
为什么现在盲目跟风的人那么多?
算法时间复杂度的阶数
情人节贺卡祝福语幽默,情人节贺卡写什么祝福
老猫枕咸鱼下一句,请高手做一张电脑壁纸 上面
中卫农村商业银行美利支行在哪里啊,我有事要
益津中路/G106(路口)在什么地方啊,我要过去
银行贷款利息过了二天现在存在卡上它会自动扣
王国维的真实死因
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?