首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

在线程函数中怎么给文本框赋值

2012-01-14 
在线程函数中如何给文本框赋值?我定义了一个线程函数:staticDWORDWINAPISplitThread(LPVOIDlpparam)有一

在线程函数中如何给文本框赋值?
我定义了一个线程函数:
static   DWORD   WINAPI   SplitThread(LPVOID   lpparam);
有一个文本框,ID为:   IDC_INFO

DWORD   WINAPI   CSplitDlg::SplitThread(LPVOID   lpparam)
{
        CString   Str= "要输出的结果. ";

        //我要在这个线程函数里把Str的值赋给文件框   IDC_INFO   ,我要怎样实现呀.我用了GetDlgItem(IDC_INFO)-> GetWindowText(Str,100);或者SetDlgItemText(IDC_INFO,Str);或者   UpdateData(False);这些方法,都出错.请问有什么办法解决这个问题?

}

[解决办法]
static DWORD WINAPI SplitThread(LPVOID lpparam);其中的参数lpparam传进去dlg的实例。
使用CDlgXXX *pDlg = (CDlgXXX *)lpparam; pDlg-> GetDlgItem(IDC_INFO)-> SetWindowText(Str);
[解决办法]
最简单的办法:为文本框添加一个Control类变量medit;

CString Str= "要输出的结果. ";

然后直接调用成员函数medit.SetWindowTextW(Str);就OK了!

热点排行