mein Ziel ist zunächst Tabs zu erzeugen, unter http://wiki.wxpython.org/Simple%20wx.Notebook%20Example habe ich auch eine gute und funktionierende Anleitung gefunden.
Ich kann das zwar in meinem Projekt implementieren, erhalte aber stets ein kleines störendes Kästchen in der linken oberen Ecke. Wenn ich andere Sizer nehme, wird der Inhalt erst gar nicht angezeigt.
Hier mein derzeitiger Code in gekürzter Form:
Code: Alles auswählen
if __name__ == '__main__':
ArgReader = arg_reader (sys.argv)
app = wx.App()
interface (None, ArgReader)
app.MainLoop()
Code: Alles auswählen
class interface(wx.Frame):
def __init__(self, title, Argreader):
self.frame = wx.Frame.__init__(self, None, title= "gEEX", size=(720, 680))
self.panel = wx.Panel(self)
self.__all_subwindows = []
self.__all_subwindows.append (subwindow_main(self.panel, Argreader))
for s in self.__all_subwindows:
s.show()
self.Show()
Code: Alles auswählen
class subwindow_main (subwindow):
def __init__ (self, window, ArgReader):
subwindow.__init__ (self, window)
self.__ArgReader = ArgReader
self.__notebook = wx.Notebook (window)
self.__all_tabs = []
self.__all_tabs.append (tab_EEX_prices (self.__notebook, self.__ArgReader))
self.__notebook.AddPage (self.__all_tabs[len(self.__all_tabs) - 1], "EEX prices")
self.__all_tabs.append (tab_EEX_prices (self.__notebook, self.__ArgReader))
self.__notebook.AddPage (self.__all_tabs[len(self.__all_tabs) - 1], "EEX prices")
sizer = wx.BoxSizer()
sizer.Add(self.__notebook, 1, wx.EXPAND, border=10)
window.SetSizer(sizer)
Wird das Notebook genauso im in der interface-Klasse erstellt, funktioniert es tadellos. Ich vermute, dass es ein Problem beim übergeben des panels im Konstruktor an die Subwindows gibt. (Wieso nur gibt es bei python keine Pointer...)
Könnt ihr mir einen Tipp geben, wo ich den Fehler gemacht habe?
Ich danke euch.