永发信息网

VC 使按钮无效

答案:3  悬赏:10  手机版
解决时间 2021-11-14 21:48
  • 提问者网友:听门外雪花风
  • 2021-11-13 20:52
VC 使按钮无效
最佳答案
  • 五星知识达人网友:醉吻情书
  • 2021-11-13 20:58
2 GetDlgItem(IDCANCEL)->EnableWindow(FALSE);我觉得是没有问题的,至少我这么写过
3 重复劳动一下吧 这个不难

第一个问题 我也觉得你这么做不行 我自己简单测了一下 确实没反应 ,可能的原因如下,你创建的是模态对话框,它的特点就是必须等待对话框返回一个值之后你的程序才会继续向下运行,再看你的代码,当domodal之后,程序停住,下一句没有执行到,这就是你会觉得没用的原因。你必须关闭这个对话框程序才会执行a.GetDlgItem(IDCANCEL)->EnableWindow(FALSE);这一句,可惜这时窗口已经销毁,所以很可能导致内存指向错误引起崩溃,不知道你是否懂了

知道了以上几点,我想你也知道该怎么做了 那就是运用非模态对话框,
把mless定义为Cson 的指针
mless=new Cson ();
mless->Create(IDD_DIALOG2,this);
mless->ShowWindow(SW_SHOW);
mless->GetDlgItem(IDC_BTN)->EnableWindow(FALSE);//我建议你把IDCANCEL改掉吧,那么多都叫IDCANCEL,你都不好找哪个是哪个
全部回答
  • 1楼网友:等灯
  • 2021-11-13 21:42
你调用了就直接销毁当然不会有效果! 等于你拿到了没给别人看就又丢掉,别人怎么知道你拿到没有! 楼上的方法可行!
  • 2楼网友:十年萤火照君眠
  • 2021-11-13 21:30

EnableWindow(AHandle,True/False);
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯