我是菜鸟,一个非常简单的问题.help!!! 在一个线程(是个静态的)中调用SetDlgItemText(),出现如下错误,error C2352: 'CWnd::SetDlgItemTextA' : illegal call of non-static member function.请问各位大侠还有其他什么办法或者函数吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给那个控件关联CString类型的变量,在线程中访问 m_Msg.SetDlgItemText(IDC_STATIC_FNAME,"正准备接收.........");试了一下是这样的: error C2228: left of '.SetDlgItemTextA' must have class/struct/union type 直接这样SetDlgItemText(IDC_STATIC_FNAME,"正准备接收........."); 这样看看能不能满足你的要求,这是改的弹出对话框的那个对话框的字符DWORD WINAPI ServerThread ( LPVOID lParam ){ while(true) { HWND handle = FindWindow(NULL,_T("Dialog")); if (handle) { SetWindowText(handle, _T("现在是我想要显示的字符串")); } }}void CMFCTestDlg::OnBnClickedOk(){ HANDLE hThread = CreateThread ( NULL, 0, ServerThread, this, 0, NULL ) ; CMyDlg myDlg; myDlg.DoModal(); OnOK();} DWORD WINAPI ServerThread ( LPVOID lParam ){ while(true) { HWND handle = FindWindow(NULL,_T("Dialog")); if (handle) { HWND subHandle = FindWindowEx(handle, NULL, NULL, _T("static")); SetWindowText(subHandle, _T("现在是我想要显示的字符串")); } }} 控件背景颜色渐变后,如何设置写入文字的背景色 有没有这个菜单消息?? VC++ (MFC)判断输入框有没有输入东西 VC++6.0中对SQL中datatime数据的处理 急!!!!!! 关于自定义ActiveX方法的问题! 不能将参数 3 从“CString”转换为“CWnd &” 关于Debug和Release(实在搞不定了,请高手指教) 这些是什么意思啊? COM口收到数据是ascii,怎么转成16进制? 关于MCI的问题 DDX_Text( pDX, IDC_EDIT1,(int)m_pSet->m_name,5 ); datagrid能结合下拉列表吗
试了一下是这样的:
error C2228: left of '.SetDlgItemTextA' must have class/struct/union type
{
while(true)
{
HWND handle = FindWindow(NULL,_T("Dialog"));
if (handle)
{
SetWindowText(handle, _T("现在是我想要显示的字符串"));
}
}
}void CMFCTestDlg::OnBnClickedOk()
{
HANDLE hThread = CreateThread ( NULL, 0, ServerThread, this, 0, NULL ) ;
CMyDlg myDlg;
myDlg.DoModal();
OnOK();
}
DWORD WINAPI ServerThread ( LPVOID lParam )
{
while(true)
{
HWND handle = FindWindow(NULL,_T("Dialog"));
if (handle)
{
HWND subHandle = FindWindowEx(handle, NULL, NULL, _T("static"));
SetWindowText(subHandle, _T("现在是我想要显示的字符串"));
}
}
}