【问题标题】:PyQt : Emtting signal from QThread to QWidgetPyQt:从 QThread 到 QWidget 的 Emtting 信号
【发布时间】:2014-03-19 02:37:56
【问题描述】:

我一直想实现一个聊天客户端/服务器,用 PyQt 处理 GUI 前端。我面临的问题是当我想告诉已经连接的客户端另一个新客户端已加入时。最初,我通过添加一个“刷新用户”按钮来解决这个问题,该按钮向客户端发送更新的列表。然而,现在当一个客户端必须向另一个客户端发送消息时,我意识到我显然必须创建一个单独的线程来继续检查来自服务器的数据。从昨天开始,我一直在尝试,阅读各种帖子/答案、论坛,但仍然无法使其正常工作。

我想要的是一个单独的线程,它在程序开始时执行,它检查来自服务器的数据,并可以发出信号来激发 GUI 线程中的函数来更改用户列表。如何使线程持续工作并发出可以被主 GUI 循环捕获的信号?我应该如何捕捉信号?

【问题讨论】:

    标签: python multithreading pyqt


    【解决方案1】:

    与其他 Qt 组件相同:您为网络管理创建一个 QThread,QThread 派生类发出带有一些来自网络的数据的信号;在主线程方面,您有连接到这些信号的 QObjects 和 QWidgets。请看以下内容(按顺序):

    一旦您阅读了这些内容并尝试了自己的代码,您就可以发布一个新问题,其中包含您遇到的更具体的问题。否则,你的问题太笼统了。

    【讨论】:

      猜你喜欢
      • 2014-03-10
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 2022-10-04
      • 2020-11-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多