2007年03月01日 星期四 08:50
你的意思是在"后台函数"里插入QApplication.processEvents() ? On 2/28/07, Leira Hua <lhua在altigen.com.cn> wrote: > 没有细看过PyQt,不过原先作的是Qt的C++开发,由一些想法,希望指正。 > 对于类似情况,大多数GUI Framework都有比较常规的处理方法。一种是多线程,这会 > 带来结构上的复杂度。还有一种,如果是比较简单的大量循环方式的处理的话,可以 > 只用单线程,简单的在循环的间隙调用系统的事件处理函数,处理已经堆在消息队列 > 中的消息就可以了。Qt/PyQt中的QApplication.processEvents()函数就是做这个工作 > 的,你只要在每个循环的间隙调用这个函数就可以了。 > > On Thu, 15 Feb 2007 21:45:35 +0800, Andelf > <andelf在gmail.com> wrote: > > > 在07-2-15,俊杰蔡 <yzcaijunjie在gmail.com> 写道: > >> > >> > >> 我换个方法解释下,我不知道使用PyQT来开发图形是不是要要考虑一些多线程。我 > >> 前台的的GUI中的widget如textlabel内容的显示,是由后台函数处理后返回的,然 > >> 而,后台后台的函数往往运行比较长,前台GUI就基本上不会有什么响应,我想问 > >> 的是,有没有什么办法能解决这样的问题呢? > > > > > > 线程呀~ Demo里边那个不是挺好的,当后台需要较长时间处理的时候就用线程 > > > > -- > Leira Hua > http://my.opera.com/Leira > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- LinuX Power
2007年03月01日 星期四 11:00
是的。当然,这里的Qapplication应该替换成你能引用到的Qapplication对象,Qt当 中是有全局能引用的qApp的,我想PyQt里面应该也有类似的全局变量。而 且,processEvents()要调用的足够频繁,才能使界面保持响应。 你试一下就知道了~ On Thu, 01 Mar 2007 08:50:28 +0800, Marco <marco-wTijmzlzVKIAvxtiuMwx3w at public.gmane.org> wrote: > 你的意思是在"后台函数"里插入QApplication.processEvents() ? > > On 2/28/07, Leira Hua <lhua at altigen.com.cn> wrote: >> 没有细看过PyQt,不过原先作的是Qt的C++开发,由一些想法,希望指正。 >> 对于类似情况,大多数GUI Framework都有比较常规的处理方法。一种是多线程, >> 这会 >> 带来结构上的复杂度。还有一种,如果是比较简单的大量循环方式的处理的话,可 >> 以 >> 只用单线程,简单的在循环的间隙调用系统的事件处理函数,处理已经堆在消息队 >> 列 >> 中的消息就可以了。Qt/PyQt中的QApplication.processEvents()函数就是做这个 >> 工作 >> 的,你只要在每个循环的间隙调用这个函数就可以了。 >> >> On Thu, 15 Feb 2007 21:45:35 +0800, Andelf >> <andelf at gmail.com> wrote: >> >> > 在07-2-15,俊杰蔡 <yzcaijunjie at gmail.com> 写道: >> >> >> >> >> >> 我换个方法解释下,我不知道使用PyQT来开发图形是不是要要考虑一些多线 >> 程。我 >> >> 前台的的GUI中的widget如textlabel内容的显示,是由后台函数处理后返回 >> 的,然 >> >> 而,后台后台的函数往往运行比较长,前台GUI就基本上不会有什么响应,我想 >> 问 >> >> 的是,有没有什么办法能解决这样的问题呢? >> > >> > >> > 线程呀~ Demo里边那个不是挺好的,当后台需要较长时间处理的时候就用线程 >> >> >> >> -- >> Leira Hua >> http://my.opera.com/Leira >> >> _______________________________________________ >> python-chinese >> Post: send python-chinese at lists.python.cn >> Subscribe: send subscribe to python-chinese-request at lists.python.cn >> Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn >> Detail Info: http://python.cn/mailman/listinfo/python-chinese > > -- Leira Hua http://my.opera.com/Leira
2007年03月01日 星期四 14:03
8错!! 学习了!!! 谢谢 !!!! On 3/1/07, Leira Hua <lhua在altigen.com.cn> wrote: > 是的。当然,这里的Qapplication应该替换成你能引用到的Qapplication对象,Qt当 > 中是有全局能引用的qApp的,我想PyQt里面应该也有类似的全局变量。而 > 且,processEvents()要调用的足够频繁,才能使界面保持响应。 > > 你试一下就知道了~ > > On Thu, 01 Mar 2007 08:50:28 +0800, Marco > <marco在waven.com> wrote: > > > 你的意思是在"后台函数"里插入QApplication.processEvents() ? > > > > On 2/28/07, Leira Hua <lhua在altigen.com.cn> wrote: > >> 没有细看过PyQt,不过原先作的是Qt的C++开发,由一些想法,希望指正。 > >> 对于类似情况,大多数GUI Framework都有比较常规的处理方法。一种是多线程, > >> 这会 > >> 带来结构上的复杂度。还有一种,如果是比较简单的大量循环方式的处理的话,可 > >> 以 > >> 只用单线程,简单的在循环的间隙调用系统的事件处理函数,处理已经堆在消息队 > >> 列 > >> 中的消息就可以了。Qt/PyQt中的QApplication.processEvents()函数就是做这个 > >> 工作 > >> 的,你只要在每个循环的间隙调用这个函数就可以了。 > >> > >> On Thu, 15 Feb 2007 21:45:35 +0800, Andelf > >> <andelf在gmail.com> wrote: > >> > >> > 在07-2-15,俊杰蔡 <yzcaijunjie在gmail.com> 写道: > >> >> > >> >> > >> >> 我换个方法解释下,我不知道使用PyQT来开发图形是不是要要考虑一些多线 > >> 程。我 > >> >> 前台的的GUI中的widget如textlabel内容的显示,是由后台函数处理后返回 > >> 的,然 > >> >> 而,后台后台的函数往往运行比较长,前台GUI就基本上不会有什么响应,我想 > >> 问 > >> >> 的是,有没有什么办法能解决这样的问题呢? > >> > > >> > > >> > 线程呀~ Demo里边那个不是挺好的,当后台需要较长时间处理的时候就用线程 > >> > >> > >> > >> -- > >> Leira Hua > >> http://my.opera.com/Leira > >> > >> _______________________________________________ > >> python-chinese > >> Post: send python-chinese在lists.python.cn > >> Subscribe: send subscribe to python-chinese-request在lists.python.cn > >> Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > >> Detail Info: http://python.cn/mailman/listinfo/python-chinese > > > > > > > > -- > Leira Hua > http://my.opera.com/Leira > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- LinuX Power
Zeuux © 2025
京ICP备05028076号