打印

(Visual C++) CWnd 和 Cwinthread的问题

[复制链接]
2542|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
将军令|  楼主 | 2007-12-24 14:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CWnd 和 Cwinthread的问题
我自己写了一个弹出窗口,用以显示消息,这个窗口继承自CWnd,写好后,我挂在主程序的菜单下,可以正常弹出和现实和显示
在这个calss里面做了一个定时器,可以显示 读秒(显示的信息每秒跳一次)的信息

我有还有一个线程,在他的RUN函数里面有密集运算,在运算的过程,输出一些信息到以上消息窗口,在这个线程里面,
我new了一个上面所述的消息窗口。可是奇怪的是只要我没有运行完这个线程的run函数,这个窗口就一定不能弹出。


我想要的是,在运算的过程中,这个窗口显示并且 能实时更新文字。
我的做法错在哪里?

int CMsgWnd_RealTimeShow::Run(void)
{
    this->popup();
    //while(!end_thread_now)
    //{
        msg.htext=this->text;  //msg是重载于CWnd的类
        msg.m_strCaption=this->caption;
        msg.Update_text();
    //}
    return 0;
}

void CMsgWnd_RealTimeShow::popup(void)
{
    this->pMsgWindow=new CMsgWnd;
    CMsgWnd& msg=*pMsgWindow;
    msg.CreateMsgWindow();
    msg.m_strCaption="Infomation";
    msg.htext="Have some infomation";    
    msg.ShowWindow(SW_SHOW);
    msg.UpdateWindow();
}

相关帖子

沙发
dai_weis| | 2007-12-25 17:16 | 只看该作者

你的定时器是怎么做的?

定时器要用系统函数中的类库中的关于定时方面的函数
不要自行构造。
自行构造的是一个顺序执行的代码集,中间占用CPU资源很大尤其是循环结构
这个问题建议到Vckbase或者CSDN.net那里,估计作MCU程序的C用的较多,VC++和类库及封装基本用不到。

使用特权

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

本版积分规则

180

主题

937

帖子

1

粉丝