打印

关于在MFC中编辑显示框无法显示的问题

[复制链接]
686|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
MFC, ST, TE, se, ce
         在MFC中定义了一个dialog(对应的类名为CTestServerDlg)框里面如图1里面的接收数据示例编辑框。该编辑框关联的变量名为CString  m_Receive;然后在class CTestServerDlg : public CDialogEx的继承类里面定义了成员函数void Display_Receive_data(CString str);。其中成员函数Display_Receive_data(CString  str)在TestServerdlg.cpp中定义如下:
void CTestServerDlg::Display_Receive_data(CString str)
{
        //SetDlgItemText(IDC_EDIT_Receive,str);
        //UpdateWindow();
        //SetDlgItemText(IDC_EDIT_Receive,str); //显示
        m_Receive=str;
        UpdateData(FALSE);
}
     之后在另一个cpp(ServerSocket.cpp)文件中的CServerSocket::OnReceive(int nErrorCode)函数中调用了Display_Receive_data(CString  str)函数如下所示:
void CServerSocket::OnReceive(int nErrorCode)
{
    ~~~;省略的代码
    CTestServerDlg ddhg;
    ddhg.Display_Receive_data(sMsg);
}
    在编译时不会报错或者出现错误;但是在跟tcp_ip调试助手模拟通信时却报错如图2。
    但是把void CTestServerDlg::Display_Receive_data(CString str)中的UpdateData(FALSE);屏蔽掉以后就可以模拟通信了,只是无法在示例编辑框里面显示出数据了。不知道该怎么办???求解答


1.png (11.16 KB )

图1

图1

2.png (19.64 KB )

图2

图2

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

56

主题

137

帖子

0

粉丝