最开始做框架的时候的需求就是多线程访问UI,以前在.NET WPF使用MVVM和数据驱动很容易做到,在JavaSwing中使用另类的观察者模式也实现了.在WxPython中使用观察者模式直接程序崩溃,于是乎仔细的研究了一下发现使用wx.CallAfter()可以实现. 首先在类中引入 import wx from wx.lib.pubsub import pub from threading import Thread 在线程中实现wx.CallAfter(),wx.CallAfter()使用p…