📄 subject_14528.htm
字号:
<p>
序号:14528 发表者:方 发表日期:2002-09-08 17:22:51
<br>主题:我想在程序运行时有一个对话框不断显示变化的数据,运行完即自动关闭,请问该如何下手?
<br>内容:由于程序运行时间很长,所以我希望能显示运行过程中的数据,例如迭代次数等,由于不能确定运行总量,所以不能采用进度条的方式.请教各位,我该怎么做才对呢?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:史列因 回复日期:2002-09-08 18:09:17
<br>内容:有什么难点吗?弹一个出来不就行了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:方 回复日期:2002-09-08 19:57:45
<br>内容:请问这种对话框是不是一定要用非模态对话框?<BR>因为这种显示必须不干扰程序的正常运行,也不能受用户的输入干扰.<BR>谢谢你的帮助!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:史列因 回复日期:2002-09-08 20:40:09
<br>内容: 不好意思,仔细想想这个问题还真是没那么简单.<BR><BR> 如果不用非模态对话框,可以把计算部分移到对话框类中完成.<BR><BR> 但不管怎样,都有一个问题:计算一段时间后必须中断计算进行一下消息处理,之后再返回接着算.不然对话框会死掉(非模式的也一样,因为它和主窗口共享消息循环),对一切输入没有反应.程序处理起来可能有些难度.<BR><BR> 最好的解决方案是使用模式对话框,然后建立一个Worker线程专门负责计算,并定时给对话框发送通知更新数据的消息.
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:凯凯 回复日期:2002-09-09 08:57:47
<br>内容:把费时工作移到工作线程中,不然会影响界面的响应。到于用哪种对话框,都可以,看你的具体要求选择。如果你在显示数据的同时那让用户进行其它的操作,就用非模态的,反之用模态的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:方 回复日期:2002-09-09 22:17:01
<br>内容:谢谢大家的帮助!<BR>目前我对线程的概念不是很熟悉,我一直以为要在高深的编程技术中才需要用,看来学习总得不断深入才行啊!<BR>我的计算程序是采用控制台程序写的C++代码,不能在其中添加对话框的操作,<BR>我难道要重新用MFC编写计算程序吗?能不能把显示在控制台也就是DOS状态中的输出转移到对话框的LISTBOX中呢?<BR>不知道这个想法是不是很幼稚,还望各位多多指点!<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史列因 回复日期:2002-09-10 07:34:49
<br>内容: 控制台程序也可以使用对话框,只要#include <windows.h>和Win32Application除了从Main()而不是Winmain()进入没有什么别的区别。(不过这时只能使用API函数,要用MFC多包含些头文件)<BR> 同样,MFC程序也可以有控制台窗口。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -