ich habe ein Formular mit mehreren Eingabefeldern und hinter jeden Eingabefeld ist ein Button, der beim anklicken das Öffnen Dialogfenster ausmacht. Wenn ich mir nun dort eine Datei auswähle, soll er mir den ganzen Pfad in das neben dem Button liegende Textfeld schreiben.
Mein Problem ist nur, dass ich nich für jeden Button eine neue Funktion schrieben will, sondern nur eine nutzen will. Dieser Funktion muss ich irgendwie übergeben, welcher Button gedrückt wurde, um dann die verschiedensten Textfelder füllen zu können.
Hier mein Code bisher:
Code: Alles auswählen
wx.StaticText(self.panel, -1, "Prime File", pos=(20, 20))
self.txtPrimeFile = wx.TextCtrl(self.panel, -1, "", pos=(75, 18), size=(200, 20))
btnFile1 = wx.Button(self.panel, label="...", pos=(280, 18), size=(30, 20))
self.Bind(wx.EVT_BUTTON, self.openFile, btnFile1)
wx.StaticText(self.panel, -1, "ProDB File", pos=(20, 45))
self.txtProDBFile = wx.TextCtrl(self.panel, -1, "", pos=(75, 43), size=(200, 20))
btnFile2 = wx.Button(self.panel, label="...", pos=(280, 45), size=(30, 20))
def openFile(self, event):
dialog = wx.FileDialog(self, "Choose a File", os.getcwd(), "", "*.*", wx.OPEN)
if dialog.ShowModal() == wx.ID_OK:
#wenn Button 1:
#self.txtPrimeFile.SetValue(dialog.GetPath())
#wenn Button 2:
# self.txtProDBFile.SetValue(dialog.GetPath())
dialog.Destroy()
MfG