当我初始化对话框时,我想选择表单上的单选按钮之一。我没有看到使用类向导关联 Control 变量的方法,就像您通常使用 CButtons、CComboBoxes 等那样......

此外,它甚至不喜欢 CRadioButton 类的存在。

如何选择多个单选按钮之一?

有帮助吗?

解决方案

单选按钮和复选按钮只是按钮。用一个 CButton 控制和使用 GetCheck/SetCheck.

其他提示

使用 CWnd::检查单选按钮 设置选择一组中的一个按钮,然后 CWnd::GetCheckedRadioButton 检索所选按钮的 ID。请务必在对话框对象上调用这些方法,而不是在任何单选按钮对象上调用这些方法。

按照 mos 的说法,以下方法成功了:

CButton* pButton = (CButton*)GetDlgItem(IDC_RADIOBUTTON);
pButton->SetCheck(true);
void CMyDlg::DoDataExchange(CDataExchange* pDX)
{
  ...
  DDX_Radio(pDX, IDC_RADIO1, m_Radio);
  ...
}

但这和向导生成的东西是一样的

您可以使用这一行:

::SendMessage(GetDlgItem(IDC_RADIO1)->m_hWnd, BM_SETCHECK, BST_CHECKED, NULL);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top