// 回零
void CHGComm::OnReturnToOriginal(void)
{
::PostMessage((HWND)m_hOwner,WM_USER_ORIGINAL,0,0);
}上面的这个怎么理解?
 WM_USER_ORIGINAL 这个在哪里找啊?
我的C++完全不会啊

解决方案 »

  1.   

    WM_USER表示用户自定义消息的最小边界,这可能是个自定义消息。看看原来定义,可能是
    #define WM_USER_ORIGINAL WM_USER + 100
      

  2.   

    ::PostMessage((HWND)m_hOwner,WM_USER_ORIGINAL,0,0);
    m_hOwner:向这个窗体发送了一个消息
    WM_USER_ORIGINAL:消息ID,应该是自定义的
    后面两个0是响应函数的参数,都是空值
      

  3.   

    WM_USER_ORIGINAL 需要你自己定义,c#没有定义
      

  4.   

    用VS打开VC项目,在使用的变量上点击右键,选择转到定义就可以看到他的值了将用户自定义的消息WM_USER_ORIGINAL发送到消息队列中。
      

  5.   


    // 回零
    void CHGComm::OnReturnToOriginal(void)
    {
    ::PostMessage((HWND)m_hOwner,WM_USER_ORIGINAL,0,0);
    }
    //试验结束
    void CHGComm::OnTestOver(void)
    {
    ::PostMessage((HWND)m_hOwner,WM_USER_TESTOVER,0,0);
    }// CT台回零
    void CHGComm::OnReturnToOriginalT(void)
    {
    ::PostMessage((HWND)m_hOwner,WM_USER_ORIGINAL_TOK,0,0);
    }上面的是方法的实现么?
      

  6.   

    c++快捷键和c#一样,点中WM_USER_ORIGINAL按F12找到定义。
      

  7.   

    上面的大大们都来了。谢谢。
    我的问题是这样的:电压试验不能回零,无法保存。  我的软件是互感器急速台的。然后是这个:void DoTTest(int nType, int QZFH, int nLC, int nZQD, double fFH, double fGLYS, int nGLDW, int nCurCT,int bz1C,int bz2C);//互感器试验上面的nType,如果是3的话 就表示是电压互感器的测试。(2,4分别表示电流的标准测试S级和电压的标准测试S级)
    不知道我说的你们看的懂么?
      我对C++现在无能为力。
      

  8.   


    virtual void OnDCTChanged(int CTNo);// 多CT切换成功
    virtual void OnReturnToOriginal(void);// 回零
    virtual void OnReturnToOriginalT(void);// DCT台切换到位
    virtual void OnTestOver(void);// 试验结束这个是.h头文件里面的抽象方法。
      我现在完全不知道怎么下手.
      

  9.   

    如果都是::PostMessage((HWND)m_hOwner,WM_USER_ORIGINAL_TOK,0,0);
    这样的代码重写还算简单你们那里没有会VC的吗?用VC把现有的类封装成stdapi然后用C#调用更简单一些
      

  10.   

    不好意思,这里就2个人。(我原来是做Java的)还有个刚刚大学毕业,什么都不会。现在还在外面培训在。
    我的话,对C++完全不入门(以前也仅仅写个小程序玩玩,刚接触程序的时候),看来以后要好好学习下C++
      既然这样还是谢谢楼上的。
    我目前确实没能力完成这个任务,和其他的2个bug修复。
    (PS:这个软件是04年的时候写的,一直打补丁用到现在。)
      我已经考虑要辞职了,还是去做Java比较好,我对.Net不敏感。
      

  11.   

    这3个bug用了2个星期都没解决。 自己都不好意思了。