Я работаю над проектом, используя OpenGL и wxPython, чтобы создать навигационный трехмерный пользовательский интерфейс.
Однако, функция OnPaint()
, похоже, не вызывается непрерывно в основном цикле. Это делает мой интерфейс не обновляется постоянно. Функция вызывается только перетаскиванием по окну. Например: когда я нажимаю клавишу со стрелкой, объект в окне перемещается только при перетаскивании вокруг окна.
Я свел свой код к этим строкам. Может ли кто-нибудь помочь мне сделать функцию OnPaint()
, вызываемую постоянно в печати, набором "HI" без необходимости перетаскивать окно?
if __name__ == "__main__":
app = MyApp()
app.MainLoop()
class MyApp(wx.App):
def OnInit(self):
frame = MyFrame()
frame.Show()
return True
class MyFrame(wx.Frame):
def __init__(self):
self.size = (1000, 700)
wx.Frame.__init__(self, None, title ="wx", size=self.size)
self.canvas = MyCanvas(self)
class MyCanvas(GLCanvas):
def __init__(self, parent):
GLCanvas.__init__(self, parent, -1, size=(1000, 700))
self.Bind(wx.EVT_PAINT, self.OnPaint)
def OnPaint(self, event):
print("HI")