wxpython 多线程_在wxPython中使用线程连续更新GUI的好方法?

本文档展示了一个使用wxPython和多线程的GUI应用程序示例,目的是连续更新多个面板上的wx.StaticText。作者通过创建两个线程(threadA和threadB)并使用wx.CallAfter()来更新GUI,但对如果有大量面板需要更新时如何更有效地管理线程提出疑问。示例代码中,每个线程对应一个类,分别负责更新不同的面板。
摘要由CSDN通过智能技术生成

我正在开发一个使用pythonv2.7和wxpythonv3.0的GUI应用程序。

我必须不断更新我的图形用户界面,其中包含许多面板。每个面板包含一个wx.StaticText。我必须不断更新这些wx.StaticTexts。我想用threads。我还使用pubsub模块与GUI通信来更新这些wx.StaticTexts。每件事都按计划进行。

我创建了一个简短的演示下面我的真实问题。在

问题:在我下面的代码中,创建了两个线程。这两个线程都能够使用wx.CallAfter()更新GUI。如果我有100个面板要更新怎么办?我需要为每个更新特定面板的线程创建100个类吗?我希望线程独立于其他线程工作。

还有什么比这个更好的方法呢?在

代码:请找到下面的示例代码来进行演示:import wx

from wx.lib.pubsub import setupkwargs

from wx.lib.pubsub import pub

import time

from threading import Thread

import threading

class GUI(wx.Frame):

def __init__(self, parent, id, title):

screenWidth = 500

screenHeight = 400

screenSize = (screenWidth,screenHeight)

wx.Frame.__init__(self, None, id, title, size=screenSize)

self.locationFont = locationFont = wx.Font(12, wx.MODERN, wx.NOR

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值