Code: Alles auswählen
#------------------------------------------------------------------------------
class MainFrame(wx.Frame):
#------------------------------------------------------------------------------
def __init__(self):
wx.Frame.__init__(self, None, -1, 'Seminarschein Drucker', size=(650, 480), style=wx.CAPTION|wx.CLOSE_BOX|wx.MINIMIZE_BOX|wx.SYSTEM_MENU)
panel = wx.Panel(self, -1)
#-----------------------------------------------------------------------------
# Textfelder erstellen
#-----------------------------------------------------------------------------
self.NachnameLabel = wx.StaticText(panel, -1, u"Nachname:",(280,05))
self.Nachname=wx.TextCtrl(panel, -1, "", (280,20), (100,-1))
self.VornameLabel = wx.StaticText(panel, -1, u"Vorname:",(400,05))
self.Vorname=wx.TextCtrl(panel, -1, "", (400,20), (100,-1))
self.MatrikelLabel = wx.StaticText(panel, -1, u"Matrikelnummer:",(520,05))
self.Matrikel=wx.TextCtrl(panel, -1, "", (520,20), (100,-1))
self.gewaehltLabel = wx.StaticText(panel, -1, u"Gewählte Veranstaltungen",(280,60))
#self.gewaehlt=wx.TextCtrl(panel, -1, "", (280,75), (300,300))
self.gewaehlt=wx.ListCtrl(panel,-1,(280,75),(300,300),style=wx.LC_REPORT| wx.BORDER_NONE|wx.LC_SORT_ASCENDING| wx.LC_SINGLE_SEL)
self.gewaehlt.InsertColumn(0,"Wahl")
self.gewaehlt.SetColumnWidth(0, 250)
count=0
#-----------------------------------------------------------------------------
# Einlesen der im Verzeichnis vorhandenen Datei und Erstellung des Trees
#-----------------------------------------------------------------------------
File_o = codecs.open("tagungen.dat", "rU", "utf-8")
TListe_o = eval(File_o.read())
File_o.close()
self.TagungsTree = wx.TreeCtrl(panel,-1, (5,05), (250,380))
TagungsTreeroot = self.TagungsTree.AddRoot(u"Seminarplan")
self.TagungsTree.SetPyData(TagungsTreeroot,"TREEROOT")
for x in TListe_o:
currentkat=self.TagungsTree.AppendItem(TagungsTreeroot,x[0].decode("utf-8"))
for y in x:
if len(y[0])>1:
gewaehlt=self.TagungsTree.AppendItem(currentkat,y[0].decode("utf-8")+" ("+y[1].decode("utf-8")+")")
self.TagungsTree.SetPyData(gewaehlt,x[0].decode("utf-8")+"|"+y[0].decode("utf-8")+"|"+y[1].decode("utf-8"))
self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnTreeRightClick)
self.TagungsTree.Expand(TagungsTreeroot)
#-----------------------------------------------------------------------------
#Öffnen einer anderen Datei
#-----------------------------------------------------------------------------
def OnOpenFormButtonClick(self, event):
self.TagungsTree.SetLabel("")
self.directory = os.getcwd()
self.open = wx.FileDialog(self, u'Bitte Datei zum Laden wählen', self.directory, '', '*.dat', wx.FD_OPEN | wx.FD_CHANGE_DIR)
if self.choose_open == wx.ID_OK:
try:
wx.MessageBox(u"Öffnen erfolgreich!", "Info", wx.OK | wx.ICON_INFORMATION)
except IOError, error:
wx.MessageBox("Fehler:\n" + str(error), "Info", wx.OK | wx.ICON_INFORMATION)
#----------------------------------------------------------------------------
# Beim Rechtsklick auf den Tree Auswahl speichern
#----------------------------------------------------------------------------
def OnTreeRightClick(self, event):
item = event.GetItem()
self.gewaehlt.InsertStringItem(0,str(item))
#----------------------------------------------------------------------------
# Reset des Formulars
#----------------------------------------------------------------------------
def OnResetFormButtonClick(self, event):
self.Nachname.SetLabel("")
self.Vorname.SetLabel("")
self.Matrikel.SetLabel("")
self.gewaehlt.SetLabel("")
self.TagungsTree.CollapseAll() # Zusammenklappen des Trees
self.TagungsTree.Expand(self.TagungsTree.GetRootItem())
#-----------------------------------------------------------------------------
if __name__ == '__main__':
#------------------------------------------------------------------------------
app = wx.PySimpleApp()
MainFrameInstance=MainFrame()
MainFrameInstance.Show()
app.MainLoop()
Edit: Sorry hatte vergessen Python auszuwählen. Nu ists in Farbe