如何在一个工作线程中调用UpdateData?
我像用一个线程,不断的刷新edit中的数值
则么不可以阿?

解决方案 »

  1.   

    还有线程中也没有办法用edit关联变量阿??2:
    如何调用一个线程的返回值?
    我创建线程
    DWORD  threadID;
       m_hThread=CreateThread(0,0,(LPTHREAD_START_ROUTINE)ThreadProc1,0,0,&threadID);
    怎么调用我线程中的返回值阿?
      

  2.   

    最好是发消息给主线程,让主线程去更新。如果直接更新的话,在MFC程序中一般会死锁。
      

  3.   

    用CWinTread类,可以发送消息,可以传递参数。
      

  4.   

    debug下用sendmessage(自定义消息)
    release下用pDialog->UpdateData
      

  5.   

    楼上的朋友,release下用pDialog->UpdateData这样可以吗?
      

  6.   

    定义一个全局变量:
    LPVOID p;
    在对话框的类里边儿:
    p=this;
    在全局的地方:
    #include "***Dlg.h"
    extern LPVOID p;
    在其它类的里边儿:
    C***Dlg * dlg=static_cast<C***Dlg *>(p);
    dlg->UpdateData();
      

  7.   

    使用对话框类的静态成员函数做线程的处理函数。传递一个对话框类指针
    static DWORD ThreadFuc(LPVOID p)
    {
        CXXXDlg *me = (CXXXDlg *)p
        me->threading();
    }在threading()中UpdateData()就可以了。