ddx_cbstring_ddr和ddx_东方财富ddx抓涨停(44)

电脑杂谈  发布时间:2017-03-01 20:06:45  来源:网络整理

下面我们看一个例子,对话框上的子窗口如图设置,各子窗口的ID和关联的变量如下表:

这时候ClassWizard会自动生成变量定义和相关代码,在对话框的构造函数中可以对变量的初始值进行设置,此外在BOOL CDialog::OnInitDialog()中会调用UpdateData(FALSE),即会将变量中的数据放入窗口中 。相关代码如下:

//头文件中的变量定义,ClassWizard自动产生

// Dialog Data

//{{AFX_DATA(CMy55_s1Dlg)

enum { IDD = IDD_MY55_S1_DIALOG };

CListBox m_lbTest;

int m_iSel;

CString m_szEdit;

CString m_szCombo;

BOOL m_fCheck;

//}}AFX_DATA

//构造函数中赋初值

CMy55_s1Dlg::CMy55_s1Dlg(CWnd* pParent /*=NULL*/)

: CDialog(CMy55_s1Dlg::IDD, pParent)

{

//{{AFX_DATA_INIT(CMy55_s1Dlg)

m_iSel = -1;

m_szEdit = _T("");

m_szCombo = _T("");

m_fCheck = FALSE;

//}}AFX_DATA_INIT

.....

}

//ClassWizard产生的关联和检查代码

void CMy55_s1Dlg::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CMy55_s1Dlg)

DDX_Control(pDX, IDC_LIST_TEST, m_lbTest);

DDX_Radio(pDX, IDC_RADIO_TEST_1, m_iSel);

DDX_Text(pDX, IDC_EDIT_TEST, m_szEdit);

DDV_MaxChars(pDX, m_szEdit, 5);

DDX_CBString(pDX, IDC_COMBO_TEST, m_szCombo);

DDX_Check(pDX, IDC_CHECK_TEST, m_fCheck);

//}}AFX_DATA_MAP

}

//在OnInitDialog中利用已经关联过的变量m_lbTest

BOOL CMy55_s1Dlg::OnInitDialog()

{

CDialog::OnInitDialog();

...

// TODO: Add extra initialization here

//设置列表框中数据

m_lbTest.AddString("String 1");

m_lbTest.AddString("String 2");

m_lbTest.AddString("String 3");

m_lbTest.AddString("String 4");

return TRUE; // return TRUE unless you set the focus to a control

}

//对两个按钮消息处理

//通过UpdateData(TRUE)得到窗口中数据

void CMy55_s1Dlg::OnGet()

{

if(UpdateData(TRUE))

{

//数据合法性检查通过,可以使用变量中存放的数据 CString szOut;

szOut.Format("radio =%d \ncheck is %d\nedit input is %s\ncomboBox input is %s\n",


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-35251-44.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 郑锦锦
      郑锦锦

      没真正打过不知道自己有多少毛病

    • 张鹏龙
      张鹏龙

      一是当时我们实力不够

    热点图片
    拼命载入中...