Ich schreibe gerade an einem Programm das eine Plugin Funktion haben soll.
Das Eigentliche Programm besteh aus:
- einer Klasse mit gesammter GUI (GUI_modul.py)
- und dem Programme (Prog.py)
in Prog.py mach ich jetzt folgendes um ein Plugin zu laden:
Code: Alles auswählen
import GUI_modul
class Prog(GUI_modul.GUI):
def __init__(self):
GUI_modul.GUI.__init__(self)
def Load_Plugin(self):
"""Lädt ein Plugin"""
plugin_file = self.aktiv_plugin_var.get()
dirs = ["plugins/",]
modul_name = plugin_file[:-3]
# ToDO Überprüfen ob schon geladen
fp, pathname, description = imp.find_module(modul_name, dirs)
try:
modul = imp.load_module(plugin_file, fp, plugin_file, description)
self.loadet_plugin = modul.Plugin(self) #Erzeuge Instanz von Plugin Klasse und übergebe ihr Instanz von Prog
except:
#Meldung
Code: Alles auswählen
class Plugin:
def __init__(self, prog_obj):
self.plugin_name = "Suche"
self.prog_obj = prog_obj
self.SETUP_PLUGIN_GUI()
def SETUP_PLUGIN_GUI(self):
self.frame_3 = Frame(self.prog_obj.plugin_frame, height=20)
self.frame_3.pack(side=TOP, expand=0, fill=X, anchor=N)
self.GENREQL_Label = Label(self.frame_3, text="Genre :", anchor='w').pack(side=LEFT, expand=0, fill=X, anchor=W)
genre = StringVar()
self.prog_obj.found_genres.append("ALL")
test = tuple(self.prog_obj.found_genres)
self.genre_select = apply(OptionMenu, (self.frame_3, genre) + test)
self.genre_select.pack(side=LEFT, expand=0, fill=X, anchor=W)
Code: Alles auswählen
genre = StringVar()
Ist bestimmt nur ein kleiner Fehler den ich nicht sehe
MfG und Danke
Andreas