想达到程序启动 初始化 一个选中,一个没选中,虽然可以通过属性修改,但这次尝试用代码初始化。
IDC_RADIO_1.SetCheck=FALSE;
IDC_RADIO_2->SetCheck(TRUE);
一开始上面这种是不行的,
因为 ID 只是一个“是UINT类型的,不过使用INT 也可以的” 更多关于ID的知识,参考这两篇:文章一,文章二。
下面这句是使 ID为IDC_RADIO_1 的radio—button 置为1的 语句,咱们来一句一句解析。
CButton* pBtn = (CButton*)GetDlgItem(IDC_RADIO_1);
pBtn->SetCheck(1);
GetDlgItem(IDC_RADIO_1) :返回一个指向这个控件的指针
(CButton*)GetDlgItem(IDC_BUTTON1)中(CButton*)为什么添加括号?
强制类型转换
用 GetDlgItem(IDC_RADIO_1); 返回一个指向这个控件的指针, CButton* ,存入 pBtn 。
接下来,就可以用它了,例如:
GotoDlgCtrl(pBtn );
MFC获取Cbutton控件的句柄
CButton* pBtn = (CButton*)GetDlgItem(IDC_***);//必须进行强制类型转换
HWND hBtn = pBtn->GetSafeHwnd();