VC 使按钮无效
问题如下:1.子窗口使用某按钮无效Csona;//Cson是子窗体类a.DoModal();a.GetDlgItem(IDCANCEL)->EnableWindow(FA...
问题如下:
1.子窗口 使用某按钮无效
Cson a;//Cson是子窗体类
a.DoModal();
a.GetDlgItem(IDCANCEL)->EnableWindow(FALSE);//这样没用。。。
2.使按钮叉(X)无效
3.使窗口中所有按钮无效 展开
1.子窗口 使用某按钮无效
Cson a;//Cson是子窗体类
a.DoModal();
a.GetDlgItem(IDCANCEL)->EnableWindow(FALSE);//这样没用。。。
2.使按钮叉(X)无效
3.使窗口中所有按钮无效 展开
展开全部
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,你都不好找哪个是哪个
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,你都不好找哪个是哪个
展开全部
EnableWindow(AHandle,True/False);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你调用了就直接销毁当然不会有效果! 等于你拿到了没给别人看就又丢掉,别人怎么知道你拿到没有! 楼上的方法可行!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询