Dateiauswahl GUI

Schlange

#! /usr/bin/python
import Tkinter 
import os
from Tkconstants import *
from tool1 import *
from xdatwahl import *  

class DV_Auswahl_GUI:
   """
   /* Klasse zur Darstellung des Auswahlfensters
   """
   def __init__(self,Beschriftung,Fachkonzept):               
      """
      /* Beschriftung String: z.B. Öffnen oder Speichern
      /* Fachkonzept:  Referenz auf ein Objekt, das die
      /*               eigentlichen Systemoperationen wie
      /*               'change directory' ausführt.
      """
      self.Fachkonzept=Fachkonzept
      # -----------------   Grafik   Anfang ------------------------
      self.oWindow=Tkinter.Tk()
      Fensterbreite=str(450)
      Fensterhoehe=str(430)
      Geometrie=Fensterbreite+"x"+Fensterhoehe+"+100+100"
      self.oWindow.geometry(Geometrie)
      self.oWindow.title("Dateiauswahl - Dr. Kokavecz") 
      # 4 Komponenten untereinander     
      # Komponente 1
      self.f1=EingabeZeile(self.oWindow,"Filter: ",200, self.return1)
      # Komponente Nr. 2 mit interner Struktur
      # Hauptrahmen
      oRahmen=Tkinter.Frame(self.oWindow)
      oRahmen.pack(expand=1,fill=BOTH,padx=5, pady=5)
         # Innerer Rahmen 1 (links)
      oRahmen1=Tkinter.Frame(oRahmen)
      oRahmen1.pack(expand=1,fill=BOTH,side="left", padx=5, pady=5)
      self.f2l=Listbox_mit_Schiebern(oRahmen1,"Verzeichnisse",\
                                       self.select_links, self.select_links)
         # Innerer Rahmen 2 (rechts)
      oRahmen2=Tkinter.Frame(oRahmen)
      oRahmen2.pack(expand=1,fill=BOTH,side="left", padx=5, pady=5)
      self.f2r=Listbox_mit_Schiebern2(oRahmen2,"Dateien", \
                                 self.select_rechts, self.doppelrechts)
      # Komponente 3
      self.f3=EingabeZeile(self.oWindow,"Auswahl: ",200, self.return2)
      # Komponente 4
      self.f4=DreiKnoepfe(self.oWindow,Beschriftung,"   Filtern   ", \
                      "Abbrechen", self.knopf1, self.knopf2, self.knopf3)   
      #  -----------------   Grafik Ende ------------------------------
      self.Fachkonzept.anmelden(self)
      self.aktualisieren()  # initial Anzeige
      Tkinter.mainloop()

   def knopf1(self):
      """
      /* Methode "Speichern" oder "Öffnen"
      """
      self.Fachkonzept.beende(self.f3.getZeile())

   def knopf2(self):
      """
      /* Methode Filtern
      """
      self.Fachkonzept.set_filter(self.f1.getZeile())

   def knopf3(self):
      """
      /* Methode Abbrechen
      """
      self.Fachkonzept.beende("")

   def return1(self,event):
      self.knopf2()

   def return2(self,event):
      self.knopf1()

# WEITERE METHODEN für Fallbacks, Ereignisse bzw. Aktionen sind hier weggelassen!
  

zurück

Dr. Bernd Kokavecz
21.05.2000