【问题标题】:MFC edit control updateMFC 编辑控件更新
【发布时间】:2013-06-11 07:17:47
【问题描述】:

我尝试更新编辑控件的文本,使用它添加的变量,这是一个 CString,但我失败了。

m_sNrAuto = "some text";  
UpdateData(TRUE);

我也尝试使用UpdateWindow(),但编辑控件仍为空白。我知道我可以通过使用SetWindowText() 来做到这一点,但我也看到了一些未使用SetWindowText() 的sn-ps,更新是通过将值传递给附属的CString 来完成的。

【问题讨论】:

    标签: c++ visual-studio-2010 mfc


    【解决方案1】:

    试试UpdateData(false);

    • true 表示控制=>数据

    • false 表示数据=>控制

    有时你必须这样做

    UpdateData(true);  // snapshot ALL controls data
    m_sNrAuto = "some text";  // tweak the one you actually need updated
    UpdateData(false);  // this pushes ALL data, not just the one you tweaked
    

    【讨论】:

    • 为了记录,参数被称为SaveAndValidate,这意味着如果true,则保存到变量中。
    • 也许你在 UpdateData(false) 之后还需要UpdateWindow(); - 这将强制它用新值刷新对话框
    • 它的 UpdateWindow 函数终于让我克服了困难。我在按钮按下的长度处理过程中更新了一个编辑控件,直到按钮处理完成后才会显示。执行 UpdateWindow 终于得到了显示的状态。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-04
    • 2016-10-09
    • 1970-01-01
    相关资源
    最近更新 更多