Sets the caption or text of a control owned by a window or dialog box.
void SetDlgItemText(
int nID,
LPCTSTR lpszString
);
请问一下,SetDlgItemText是如何改变控件的内容的。我在VS2008里面的OnCreate函数调用这个函数:
SetDlgItemTextW(IDC_INFO2, str);
经过调试,str的值OK,就是没有设置成功。
另外,为什么我在构造函数里面调用这条函数的时候会出现很严重的后果呢---断言失败!
如果我设置一个变量来修改的话,就可以!
一楼回答很靠谱!不过“呼叫UpdateData()函数进行更新”还是没有用!
我在书上看到一句话“对话框数据成员的初始化工作一般在其构造函数进行,而对话框和控件的初始化则在OnInitDialog()函数中完成”。因为我有两种方法,如果为控件建立一个变量,例如m_strName,则在构造函数中设置它的值。如果要使用SetDlgItemTextW这条函数,则在OnInitDialog()函数中调用。
函数式编程
慕仙森
相关分类