2016 - 2024

感恩一路有你

UI线程什么意思 为什么很多Python开发者写GUI不用Tkinter,而要选择PyQt和wxPython或其他?

浏览量:1092 时间:2021-03-12 09:08:38 作者:admin

为什么很多Python开发者写GUI不用Tkinter,而要选择PyQt和wxPython或其他?

我认为主要有两个原因。

首先,国外关于Tkinter的专著基本没有(目测只有一本“Python和Tkinter编程”),所以国内关于Tkinter的专著不多。你知道原因。没有中国材料,使用的人就不多了。

Tkinter相关知识只能从python帮助文档中获得。遗憾的是,中文官方帮助文档中对Tkinter的介绍并不完全是中文的,这阻碍了程序员学习Tkinter的热情。

基于以上原因,Tkinter基本上是在中文书的末尾介绍的,篇幅一般不超过10页。许多书一下子就介绍出来了。你在网上看到的课程基本上都标着“简明”。或外文网站翻译教程。按照自媒体的规则,这属于“运输”,而不是“创意”。

其次,与其他两个竞争对手相比,Tkinter的功能有点单薄,界面也没有华丽的效果,可以说是“朴素的外表”,喜欢它的人一定要欣赏它的内在美。而且它没有图形界面设计工具,这足以阻挡大量的人。

如何使用python3.5.2 pyqt5编写无阻塞多线程GUI?

没有人回答这么长的问题,因为我没有用py,没有好的答案。我通常用C和QT。如果项目很简单,我就把它放在主循环中。如果它很复杂,我通常使用boost库打开另一个线程以在另一个循环中接收消息。我不知道怎么写py,但应该是一样的。我想知道为什么它被封锁了?我认为代码有问题

程序定义了一个form类实例form1,然后定义了一个非form操作处理类food。2) 在form1中的key click事件中,创建了10个线程来运行“操作处理类food”中的方法。3) 然后,操作处理类“food”中某个方法的计算结果将显示在form1表单的文本框中。简单的跨线程访问控制可以通过invoke和beginInvoke来解决,而现在,跨线程、跨类,它不能在类中调用。文本框.调用()否则,将报告错误。

请教,如何在一个类中跨线程,并且跨类,来访问UI的控件?

用法:runonuithread可以帮助您更新线程中的UI。我们只需要写一些像你的活动。线程中的Runonuithread(New runnable(){@override public void run(){//refresh UI})

UI线程什么意思 python qt5漂亮界面 为什么不能在子线程更新UI

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。