MFC关于Radio Button控件的问题 高分悬赏!!敬请指点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC关于Radio Button控件的问题 高分悬赏!!敬请指点相关的知识,希望对你有一定的参考价值。
各位高手好~ 问题如图所示,创建一个对话框,在"TYPE"里面有TYPEA和TYPEB两个按钮,如何实现 “在初始画面时,已经自动点选了TYPEA,并已显示TYPEA分栏 TYPEB分栏隐藏 在点选上面的TYPEB时,TYPEA分栏隐藏 TYPEB分栏出现” 由于不才刚刚接触MFC...几乎什么也不熟悉 请您一步一步的详细告诉我怎么做,回答的详细再追加高分! PS:一定要详细步骤啊 小弟拜托了T_T
参考技术A 这里以一种情况作假设,初始化时,TypeA被选择,TypeA分栏显示,TypeB分栏被隐藏;之后,根据点选的按钮来隐藏和显示各自的分栏。
首先每一个控件都必须有特定的ID号,所有控件都是,包括静态文本控件,所有ID号都不能一样
在对话框类的OnInitDialog函数中添加如下代码:
CButton*
pButton=(CButton*)GetDlgItem(IDC_RADIO1);
//假设按钮TypeA的ID为IDC_RADIO1
pButton->SetCheck(1);
以上两句是得到单选按钮TypeA的句柄,然后用SetCheck函数设定它的状态为选定
另外,隐藏静态文本控件和GroupBox控件的代码是:
CStatic*
pStatic=(CStatic*)GetDlgItem(IDC_ID);//IDC_ID为要隐藏的控件的ID号
pStatic->ShowWindow(false);
隐藏编辑框控件的代码是:
CEdit*
pStatic=(CEdit*)GetDlgItem(IDC_ID);//IDC_ID为要隐藏的控件的ID号
pEdit->ShowWindow(false);
从上面这些应该能看出规律吧,其实都是先得到控件的句柄,然后用相应的函数操作它。仿照这些就能完成你的要求。
要使单选按钮处于未选定状态,只需要将SetCheck函数的参数设为0即可。
要显示某控件,只需要将ShowWindow函数的参数设为true即可。
你的另一个要求:选择TypeA单选按钮时,显示A分栏,隐藏B分栏
大概实现如下:
先为TypeA单选按钮添加BN_CLICKED消息响应函数,在VC6.0的添加类向导中的选择对话框类,然后在左边的列表中点击TypeA按钮的ID号,右边会列出它的所有消息函数,选择BN_CLICKED,然后点击添加函数按钮即可
在添加好的消息函数中,也是用上面提到的代码来实现隐藏和显示控件
对于TypeB按钮也用同样的方法
详细的步骤很麻烦,就不写了。主要的东西都说了,具体怎么安排,就看你自己去布置了,只有自己摸索了,才能记得住,以后想用时才能随手拈来
MFC radio button如何默认选中
比如现在有两个 radio button,角度和弧度,我想让他默认选择弧度,怎么做?
参考技术A 到Resource View 里面 把 弧度的属性Group设置为True, 角度为False,初始化OnInitDialog的时候把弧度的radio button SetCheck()下BOOL CXXXXDlg::OnInitDialog()
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_radiohudu.SetCheck(TRUE);
m_radiojiaodu.SetCheck(FALSE);
return TRUE;
// return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
本回答被提问者和网友采纳 参考技术B CButton myButton;
myButton.SetCheck(BST_CHECKED);
以上是关于MFC关于Radio Button控件的问题 高分悬赏!!敬请指点的主要内容,如果未能解决你的问题,请参考以下文章