读书人

怎么实现对话框的一组单选钮关联一个b

发布时间: 2012-01-22 22:38:43 作者: rapoo

如何实现对话框的一组单选钮关联一个bool变量同时每个单选钮又及关联一个CMFCbutton变量
在对话框中的一组单选钮,如果关联了一个BOOL变量后就不能再让其中的每个单选钮再关联一个CMFCButton变量了,我的目的是想利用CMFCButton来实现单选钮的图片显示,同时还能利用原来的BOOL变量指示当前是哪个单选钮被选中。请高手指点如何实现,非常感谢!

[解决办法]
对话框是通过在void DoDataExchange(CDataExchange* pDX);里面设置控件的关联变量.
我推测是在BOOL OnInitDialog()里调用的DoDataExchange.
如果你的动态创建控件代码是写在
CDialog::OnInitDialog();之后的话,程序就会崩溃.

所以你只需要把你的代码,例如:
void CxxDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CxxDlg)
DDX_Text(pDX, IDC_EDIT1, m_strText);
//}}AFX_DATA_MAP
}

BOOL CxxDlg::OnInitDialog()
{
edit.Create(ES_RIGHT, CRect(0,0,0,0), this, IDC_EDIT1);

CDialog::OnInitDialog();
}

[解决办法]

C/C++ code
int m_bRadio;CButton    m_button;void CXXXDlg::DoDataExchange(CDataExchange* pDX){    CDialog::DoDataExchange(pDX);    //{{AFX_DATA_MAP(CAAADlg)    DDX_Control(pDX, IDC_RADIO1, m_bRadio);    DDX_Radio(pDX, IDC_RADIO1, m_button);    //}}AFX_DATA_MAP} 

读书人网 >VC/MFC

热点推荐