当前位置: 首页 > 面试题库 >

是否有一个与wx.FutureCall等效的PyQT(在初始化并绘制窗口之后调用函数)?

马德厚
2023-03-14
问题内容

我试图在打开主窗口后延迟设置变量。我试过了showEvent(),但是不起作用。我知道在wxPython中有wx.FutureCall方法可用于这种情况:

class MyFrame(wx.Frame):

 def __init__(..frame init parms.., ..your init parms..): 
   wx.Frame.__init__(..frame init parms..) 
   self.Show() 
   wx.FutureCall(500,self.OnLoad)   #1/2 seconds from now to call OnLoad()

 def OnLoad(self, ..your init parms..): 
   ..your init code.. 
   self.Refresh()

我的问题是:在PyQT主窗口初始化并最终显示之后,如何延迟执行某些操作?我怎样才能做到这一点:

class MyWindow(QtGui.QMainWindow):
  def __init__(self,parent=None):

    QtGui.QWidget.__init__(self,parent)

    ... init stuff here...

    self.FutureCall(500,self.OnLoad)

  def OnLoad(self,event):
    ... my stuff here...

提前致谢!保罗


问题答案:

我不知道为什么showEvent不为您工作。对我来说,它按预期工作。显示窗口后将其触发。

对于延迟的通话,您可以使用QTimer.singleShot

class MyWindow(QtGui.QMainWindow):
  def __init__(self, parent=None):

    QtGui.QWidget.__init__(self, parent)

    ... init stuff here...

    QtCore.QTimer.singleShot(500, self.OnLoad)

  def OnLoad(self):
    ... my stuff here...


 类似资料:
  • 问题内容: 我为一位同伴编写了一个网络刮板,以节省他的工作时间。它是使用,使用和打开Firefox浏览器编写的。 我已经在使用的Linux机器上亲自编写了此代码,因此Firefox实际上不会打开并干扰我的工作。 如何使其在Windows PC的虚拟显示器中运行? 问题答案: 您无法在Windows上运行的原因是PyVirtualDisplay使用Xvfb作为其显示,而Xvfb是X Window S

  • 问题内容: 我知道您可以在实例化期间初始化数组,如下所示: 有没有办法用ArrayList做同样的事情?还是我必须单独添加内容? 问题答案: Arrays.asList可以在这里提供帮助:

  • 问题内容: 我刚刚开始学习SQLite。能够看到表格的详细信息(如MySQL的表格)会很高兴。不够好,因为它仅具有基本信息(例如,它不会显示列是否是某种字段)。SQLite有办法吗? 问题答案: 在SQLite的命令行实用程序有一个命令,显示你的创建语句。

  • 我不熟悉使用LWJGL(一般来说Java也是如此),因此,我阅读了他们关于入门的页面,他们提供了一个Hello World程序示例。我自己尝试运行它,发现它出现以下错误:<代码>2020-03-18 10:20:02.145 java[19779:1119716]***由于未捕获的异常“nSinternalinconsistenceexception”而终止应用程序,原因:“[NSUndoMana

  • 问题内容: 我在复杂的Java程序中有一个方法,在初始化Web ApplicationContext和SpringBeans之后需要立即调用该方法。 我试图玩弄, 但此方法将调用一个方法。 我想知道是否有人知道该怎么做。 谢谢。 问题答案: 您可能会喜欢上。

  • 问题内容: 我有一个AngularJs应用程序,我想在其中一开始就加载消息和应用程序版本,并将它们保存在本地存储中,然后再在控制器中使用它们。我现在所拥有的是每个控制器中的服务调用(目前为三个): 我只想获取一次应用程序版本并将其存储在此处。我不必每次都检查版本,对(如果新版本中添加了新消息)? 我发现使用$routeProvider的建议,但我的应用程序不是SPA。所以我需要其他想法/建议。对你