Seite 1 von 1

Ein 'open recent' Untermenü bauen?

Verfasst: Dienstag 8. Mai 2007, 21:13
von CM
Hoi,

Versuche gerade ein 'Open recent' Untermenü in meine Menubar einzubauen. Hierzu wird die Liste der zuletzt geöffneten Dateien (bzw. ihre Pfade) eingelesen (max. 10 Pfade). Das Untermenü wird automatisch gebaut (siehe http://www.python-forum.de/topic-6891.html). Generieren des Untermenüs beim Startup habe ich bereits programmiert (werde ich gerne auch online stellen, wenn alles funtioniert). Aber wie kann ich erreichen, daß der Pfad auch an die Funktion übergeben wird, die die Datei öffnen soll? Also, wie kann ich einen Parameter an eine Methode in self.bind(wx.EVT_MENU, method, ...) übergeben? (self könnte eine wx.Frame-Instanz sein)
Geht das überhaupt? Gibt es workaround? Kennt jemand ein gutes Codebeispiel hierfür?

Fragen über Fragen :?

Gruß,
Christian

PS Werde wahrscheinlich nicht schnell antworten können, da ich für heute Schluß mache und in den nächsten Tagen verdammt viel um die Ohren haben werde. Danke für euer Verständnis.

Re: Ein 'open recent' Untermenü bauen?

Verfasst: Dienstag 8. Mai 2007, 21:40
von gerold
CM hat geschrieben:Kennt jemand ein gutes Codebeispiel hierfür?
Hallo Christian!

``wx.FileHistory()`` --> In der wxPython-Demo gibt es ein Codebeispiel dafür.

http://www.python-forum.de/viewtopic.php?p=50671

Im Beispiel der wxPython-Demo wird für die Dateiliste, für jeden Eintrag eine eigene ID vergeben.

Code: Alles auswählen

self.Bind(wx.EVT_MENU_RANGE, self.OnFileHistory, id=wx.ID_FILE1, id2=wx.ID_FILE9)
lg
Gerold
:-)

Verfasst: Mittwoch 9. Mai 2007, 15:34
von CM
Autsch! Habe ich übersehen.

Vielen Dank,
Christian

Verfasst: Mittwoch 9. Mai 2007, 17:43
von Francesco
CM hat geschrieben:Autsch! Habe ich übersehen.

Vielen Dank,
Christian
Hi Christian, du kannst dir auch dieses Stück vom Code von DrPython ansehen.

Verfasst: Donnerstag 10. Mai 2007, 15:53
von CM
Danke, guter Tipp - das werde ich machen.

Gruß,
Christian

Verfasst: Donnerstag 10. Mai 2007, 19:40
von Francesco
CM hat geschrieben:Danke, guter Tipp - das werde ich machen.

Gruß,
Christian
Bitte. :)

In DrPython wird zuerst das ganze Menü zerstört und dann neu aufgebaut, nachdem ein file geöffnet wurde. Man könnte es auch irgendwie mit InsertMenu oder so ähnlich machen, Ansichtssache, was leichter fällt.
Wenn du dich in spe, boa oder ulipad leichter zurechtfindest, kannst du dort auch nachsehen. Überhaupt eine gute Idee, viele wxPyhton Programme auf der Festplatte zu haben. Ich suche dann mit DrPyhton (SearchInFiles plugin) oder Total Commander (Alt-F7) nach den jeweiligen Begriffen (grep).

Verfasst: Montag 14. Mai 2007, 18:55
von CM
So, habe jetzt fast 1:1 von der Demo übernommen - das reicht mir auch.

Lediglich mein Menu Bar Beispiel werde ich gleich mal updaten.

Vielen Dank,
Christian