MFC中Radio Button互斥操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC中Radio Button互斥操作相关的知识,希望对你有一定的参考价值。
参考技术A 概述Radio Button通常成组使用,组内是互斥的。
如何设置分组
(1)Ctrl+D
(2)依次点击Radio Button完成Tab键顺序设置
(3)将一组内首个Radio Button的Group属性设置成TRUE,其他为FALSE。 系统每检测到一个Group属性为TRUE的Radio Button,都会认为是一个新分组。
操作
在OnInitDialog()中设置RadioButton的初始选中状态,只需将每组选中的Radio Button进行设置,组内其余的Radio Button是互斥不选中的。
((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE); //选上
通过Radio Button点击事件来设置新Radio Button状态,依然是只操作组内被选中的Radio Button即可。
RadioButton
作用:RadioButton可以构建一组单选按钮;一组互斥的单选按钮必须在一个RadioGroup中(多个按钮中单选一个出来)
使用:
<RadioGroup android:id="@+id/radio_group" android:layout_width="wrap_content" android:layout_height="wrap_content" > <RadioButton android:id="@+id/radio_iphone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="iPhone" /> <RadioButton android:id="@+id/radio_ophone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="oPhone" /> <RadioButton android:id="@+id/radio_phone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Phone" /> </RadioGroup>
代码--单击RadioButton时触发:
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedld) { switch (checkedld) { case R.id.radio_iphone: Toast.makeText(getApplicationContext(), "iphone",Toast.LENGTH_LONG ).show(); break; case R.id.radio_ophone: Toast.makeText(getApplicationContext(), "ophone",Toast.LENGTH_LONG ).show(); break; case R.id.radio_phone: Toast.makeText(getApplicationContext(), "phone",Toast.LENGTH_LONG ).show(); break; default: break; } } });
单击其他按钮时,获取单选了哪个值:
java代码中用RadioGroup的getCheckedRadioButtonId()获取选中选项的ID。例如在其他其他按钮中需要判断单选组里使用了哪个单选按钮:
button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (radioGroup.getCheckedRadioButtonId() ==R.id.radio_iphone) { // 这里填写处理代码 } }else { // 这里填写处理代码 });
以上是关于MFC中Radio Button互斥操作的主要内容,如果未能解决你的问题,请参考以下文章
MFC中, 如何设置我想要选择的Radio Button项 - How to set the selection by code.
MFC窗口应用程序中如何向Group box中添加多个radio button?