请问我使用MFC调用了list显示文字,但是在程序运行中对话框没有显示

请问我使用MFC调用了list显示文字,但是在程序运行中对话框没有显示,第1张

你的这种做法存在这样的问题:在写MFC程序的时候,经常会遇到的一种错误是对话框还没有被实力话,即对话框对象不存在,就对该对话框里面的控件进行初始化 *** 作。因为对话框没有被实例化,既而对话框中的控件也就不存在,对这些控件进行初始化 *** 作自然会导致错误。

对于这个问题,我通常采用这样的做法:

1、在子窗口类中声明一个变量,如int m_nFlag,用来判断父窗口点击的是哪个按钮,要让它在list ctrl中显示什么样的信息。

2、在父窗口响应按钮点击 *** 作的函数中,依据点击的按钮不同给子窗口的m_nFlag传递不同的值,然后显示子对话框,即

m_Tempm_nFlag=1;(具体传递哪个值根据按钮不同而设)

m_TempDoModal();

3、在子窗口的OnInitDialog函数中,根据m_nFlag的值来初始化list control控件。

你的想法是不是:每隔一段时间调用一次Ontimer,在这次ontimer启动一个线程,在这个线程内将一帧图像显示在MFC控件上?

那么你做法明显错了,你的实际做法是:每隔一段时间调用一次ontimer,在这次ontimer启动一个线程,在这个线程内开始一个循环,在这个循环内把所有帧都画在IDC_STATIC_PIC上面,直到帧被画完为止。你想想,你每次调用的ontimer都做了“把所有帧都画在IDC_STATIC_PIC"这个工作,是错误。你应该做的事情是:每隔一段时间调用的ontimer,只把一帧显示在控件上。建议修改while循环体。

这个是MFC的通病,我以前回答过这样的问题,C++就是这样,“脾气很难琢磨,你要是非要显示的的话,可以先等会,等他反应过来就行了,要是还不行的话,你就保存一下或重新打开工程试试,再不行你就直接编译,不管有没有提示,总之程序对就不会有问题,他不像C#只要不提示就会出错,总之保证你自己的程序正确就可以了 !

以上就是关于请问我使用MFC调用了list显示文字,但是在程序运行中对话框没有显示全部的内容,包括:请问我使用MFC调用了list显示文字,但是在程序运行中对话框没有显示、我做的在MFC控件中播放视频的程序,总是显示不出来啊,哪位高手给看看! 其中用到了OPENCV和多线程的知识、(MFC编程)c++编译器(MFC编程)无法显示成员函数怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9610545.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存