Ваш код необычен в том смысле, что wx.App
обычно просто app = wx.App()
Однако _init_
должно быть __init__
и не использовать имена переменных, которые могут конфликтовать с зарезервированными словами или внутренними элементами.
т.е. Panel
или Label
и, вероятно, App
.
Должно работать следующее:
import wx
class PDFApp(wx.App):
def OnInit(self): #Method used to define Frame & show it
frame = PDFFrame(parent=None, title="PDF Combiner")
frame.Show()
return True
class PDFFrame(wx.Frame):
def __init__(self, parent, title):
super(PDFFrame, self).__init__(parent, title=title)
panel = PDFPanel(self)
class PDFPanel(wx.Panel):
def __init__(self, parent):
super(PDFPanel, self).__init__(parent)
label = wx.StaticText(self, label="hello", pos=(50,100))
App = PDFApp()
App.MainLoop()
![enter image description here](https://i.stack.imgur.com/6DAEH.png)
Редактировать:
Я довольно старомоден (и самоучка), поэтому я бы написал что-то простое, например:
import wx
class PdfFrame(wx.Frame):
def __init__(self, parent, title):
wx.Frame.__init__(self, parent, -1, title)
panel = wx.Panel(self)
label = wx.StaticText(panel, -1, label="hello", pos=(50,100))
self.Show()
app = wx.App()
frame = PdfFrame(None, title = "Simple Panel")
app.MainLoop()