情况是这样,有一组单选按钮 两个不同的类别,比如 学生 和 非学生, 下面的输入字段信息根据类别不同显示不同的必填项,现在是当选择了学生,也输入了一些基本信息,如果这时切换选择了 非学生,在这个非学生单选按钮的点击事件(其实这个时候从界面上看已经被选中了)进行判断提示,是否真的确认切换, 如果选择否就是不切换, 这个时候就需要手工吧按钮设为 学生 setcheck(1) 非学生 setcheck(0), 问题来了,如果仅在这个界面行貌似黑点一直切换正常的,但是如果切换到其它页面,然后一直都在不停的提示是否切换的对话框,貌似一直在非学生的点击事件...求教
解决方案 »
- 调用其他功能
- sqlite3 如何实现从数据库中取出带格式的时间
- 怎样在对话框中添加WORD编辑窗口?小弟初学VC,找了很多相关的东西,但是理解不了,请大家把详细点的方法教我。谢谢啊。
- SDI中如何从后台取得动态数据,显示在屏幕上(要能够动态变化),请指教一下思路...
- modem和串口通讯(ActiveX控件MSCOMM32.OCX)丢数据什么原因?
- 招聘笔试题
- 如何把CString中间含有'\0' 转换为_varinat_t类型
- ListCtrl 的问题
- 关于Ctatic与后加的控件的位置问题
- ActiveX控件一个小问题
- VC2005怎么调用.C文件中的方法
- 求懂WIFI共享的高手点化。
说的有点乱了,代码或许清楚点,
[code]
// 学生单选按钮点击事件 对应不同的信息字段输入
void CtestttestDlg::OnBnClickedRadioStudent()
{
AfxMessageBox(_T("学生信息"));
}// 非学生单选按钮点击事件 对应不同的信息字段输入
void CtestttestDlg::OnBnClickedRadioNotstudent()
{
if (IDYES != AfxMessageBox(_T("是否确认切换到非学生页面,已输入的信息将被清空"),MB_YESNO))
{
// 状态改变回去,还是选中学生单选按钮
((CButton*)GetDlgItem(IDC_RADIO_STUDENT))->SetCheck(1);
((CButton*)GetDlgItem(IDC_RADIO_NOTSTUDENT))->SetCheck(0); return;
}
AfxMessageBox(_T("非学生信息"));
}[/code]切换到非学生的时候 弹框提示,如果选择否 不切换的话,焦点在这个对话框的时候界面显示是正常的,如果随便切换到其他再切换回来,这时候对话框要重绘一下的,然后就开始不断的在弹框是否切换
下午在csdn搜索了半天没有发现同样的问题,刚刚人品爆发了找到了一个10年一朋友问的,当时讨论的也很激烈,里面给了解决方法,感兴趣的朋友可以看下,貌似这个让用户选择的功能常用才是 地址:http://bbs.csdn.net/topics/147053 关于radio button的“小”问题求助 @z_sky ;
里面提到的解决办法是 在setcheck以后把焦点移除到别的控件上 GetDlgItem(IDOK)->SetFocus(); 困扰了一个下午的问题,终于可以睡个好觉了,哈哈 同时感谢上面几位