繁体   English   中英

PyQt中的第三方Python模块

[英]3rd Party Python Modules in PyQt

我试图决定一种技术来开发可以与串行端口接口的桌面应用程序。 我已经调查蟒蛇,它看起来像一个基于控制台应用程序应该不难- http://pyserial.sourceforge.net/ ,我也看着PyQt的,这将满足我的项目的GUI部分。

但是是否可以在PyQt中包含第三方模块(例如PySerial)?

PyQt和pyserial可以很好地配合使用(事实上,我正在其中一个应用程序中使用它们。)pyserial网站上的示例大多是类似于控制台的简单示例,但是没有理由不能从任何pyserial对象获取数据并在PyQt中使用它们。 例如,您可以获取通过串行端口接收到的数据,然后将其推入QByteArray或NumPy数组或其他任何适合您的幻想中。

有两个警告:如果使用Serial.readline(),它将阻塞直到获得换行符(\\ n)。 这可能对您的GUI不利。 如果必须使用readline()而不是read(),建议将与pyserial相关的活动放在单独的线程中。 如何执行此操作取决于您,但是我建议您使用Qt的内置线程。 然后,您可以在线程内部将数据转换为Qt类型。 有关在pyqt中进行线程化的更多信息。

编辑 :几乎忘了。 如果有人在乎,您也可以使用PyQt编写控制台应用程序。 只需使用QCoreApplication而不是QApplication。 不太确定为什么要在python中这样做,除非您真的很喜欢Qt的数据类型...在这种情况下,您可以使用PyQt和pyserial编写纯控制台应用程序:D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM