• MFC中UpdateData()用法


    一、总结UpdateData()函数

    UpdateData(true);//用于将屏幕上控件中的数据交换到变量中。

    UpdateData(false);//用于将数据在屏幕中对应控件中显示出来。

           当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。

    关于关联变量,一个编辑框可以和CEdit变量关联,也可以和CString变量关联。

    二、关于编辑框的赋值和取值

    向编辑框中赋值和取值时:

    1、建一个 控制型的变量,如m_edit1,用CWnd的SetWindowText() 和GetWindowText()来赋值和取值。

    m_Edit1.SetWindowText("Hello"); 

    或者GetDlgItem(IDC_EDIT1)->SetWindowText(str);

    2、建立一个控制型的变量,如m_edit1,用SetDlgItemText()和GetDlgItemText()来赋值和取值

    CString Str="Hello":

    m_edit1.SetDlgItemText(IDC_EDIT1,str);

    关联控制型变量时,会在DoDataExchange中,使用DDX_Control(pDX,IDC_EDIT,m_edit1);进行关联

    2、直接建一个数值形的变量如m_strEdit;   用  UpdateData()来控制得到变量,还是更新变量。

    关联CString变量的话,会在对话框类的构造函数中,进行初始化,在DoDataExchange中,通过DDX_Text(pDX,IDC_EDIT,m_EditText),进行对象的绑定。

    //取值   
      UpdateData(TRUE);   
      CString   buf   =   m_Edit1;    
      //赋值   
      m_Edit1="ok!";   
      UpdateData(FALSE);

    另外注意一点:

    使用UpdateData()函数时,当前界面上所有绑定了的变量(即通过MFC ClassWizard给控件添加了对应的变量)都会被UpdateData(TRUE)更新成对应控件中的内容;同样所有绑定了变量的控件中的内容也会UpdateData(FALSE)更新成对应变量中的内容。

    要接受用户的输入就true,

    要输入结果给用户就flase

    数据量不多的话,最好用SetDlgItemText()和GetDlgItemText()

  • 相关阅读:
    第89题:格雷编码
    第88题:合并两个有序数组
    第86题:分隔链表
    第83题:删除排序链表中的重复元素
    第82题:删除排序链表中的重复元素II
    第81题:搜索旋转排序数组II
    redis笔记---不定时更新
    关于银行股
    开博客
    group by
  • 原文地址:https://www.cnblogs.com/shikamaru/p/7814773.html
Copyright © 2020-2023  润新知