mein Programm sieht in etwa so aus...

Jetzt denkt ihr euch wahrscheinlich, toll - aber was soll das ...
Auf dem Screenshot ist zu erkennen, wo später die Ausgabe erscheinen soll.
Er soll mir dort anzeigen, was ich kopiere, wie und ob mit Fehlern oder nicht.
Den Code möchte ich euch natürlich auch nicht vorenthalten und darum füge ich ihn an:
Code: Alles auswählen
import shutil, os, os.path, ConfigParser, tkMessageBox
from time import *
from distutils.dir_util import *
from Tkinter import *
from tkSimpleDialog import *
ein1 = ''
ziel = ''
#class __beenden_programm__:
def beenden_ja_nein(root):
from tkMessageBox import askokcancel
frage = askokcancel('Beenden?', 'Programm beenden?')
if frage:
root.quit()
root.destroy()
def ende():
command=beenden_ja_nein(root)
class __MainWindow__:
def __init__ (self):
self.fenster = Tk()
self.fenster.columnconfigure(0, weight=1)
self.fenster.rowconfigure(0, weight=1)
self.text = Text(self.fenster, width=40, height=40)
self.text.grid(row=0, column=0, sticky="nesw")
self.verticalScroller = Scrollbar(self.fenster, orient="vertical")
self.verticalScroller.grid(row=0, column=1, sticky="ns")
self.text['yscrollcommand'] = self.verticalScroller.set
self.verticalScroller['command'] = self.text.yview
self.bt_sys = Button(self.fenster, text="Zahlen", command=self.zahlen).grid()
self.fenster.mainloop()
def zahlen(self):
for j in range(1,300):
self.text.insert(INSERT , str(j) + '\n')
print j
def backup():
#labok=Label(root, text="Auftrag wurde ausgeführt!")
#labok.pack()
global ein1
global ziel
datei = os.path.splitext(ein1)
time = strftime("%Y%m%d_%H%M%S", localtime())
zpfad = ziel + "/" + time
timedir = mkpath(zpfad, mode=0777, verbose=0, dry_run=0)
shutil.copy(ein1, "%s/%s_kopie%s" % (timedir[0], datei[0], datei[1]))
tkMessageBox.showinfo('Information', 'Ihr Auftrag wurde ausgeführt!')
utokay=Button(root,text="Okay!", command=backup)
def ziel():
global ziel
ziel=askstring('Pfad' ,'Bitte hier eingeben: ',
initialvalue='Eingabe hier...')
tkMessageBox.showinfo('Info', 'Die Eingabe des Zielordners verlief Fehlerfrei!')
def info():
tkMessageBox.showinfo('Info', 'Informationen zum Programm!')
def nichtda():
tkMessageBox.showerror(title="Fehler", message="Funktionen stehen noch nicht zur Verfügung")
def eingabe():
global ein1
ein1=askstring('Dateinamen', 'Bitte hier eingeben: ',
initialvalue='Eingabe hier...')
#Erzeugen eines Fensters
root=Tk()
root.title("Datensicherung 1.0")
#Labelbeschriftung im Fenster
lab=Label(root,text=u"Datensicherungen 1.0")
#Textfenster, dass zur Ausgabe dienen soll!
textfenster=Text(root,width=90)
#Buttons, die angezeigt werden
butokay=Button(root,text="Okay!", command=backup)
buteingabe=Button(root,text="Eingabe", command=eingabe)
butziel=Button(root,text=" Ziel ", command=ziel)
butinfo=Button(root,text=" Info ", command=info)
butbeenden=Button(root,text="Beeenden", command=ende)
textfenster.pack(fill=BOTH,expand=YES)
butokay.pack(side = TOP,expand=NO)
buteingabe.pack(side = LEFT,expand=NO)
butziel.pack(side = RIGHT,expand=NO)
#butinfo.pack(fill = BOTTOM,expand=NO)
#butbeenden.pack(side = RIGHT,expand=NO)
menubar = Menu(root)
#Menübar
filemenu = Menu(menubar, tearoff=0)
filemenu.add_command(label="Open Config", command=nichtda)
filemenu.add_command(label="Save Config", command=nichtda)
filemenu.add_separator()
filemenu.add_command(label="Exit", command=ende)
menubar.add_cascade(label="File", menu=filemenu)
# Mehr Menübareinträge
editmenu = Menu(menubar, tearoff=0)
editmenu.add_command(label="Cut", command=nichtda)
editmenu.add_command(label="Copy", command=nichtda)
editmenu.add_command(label="Paste", command=nichtda)
menubar.add_cascade(label="Edit", menu=editmenu)
helpmenu = Menu(menubar, tearoff=0)
helpmenu.add_command(label="About", command=info)
menubar.add_cascade(label="Help", menu=helpmenu)
# Anzeigen des Menüs
root.config(menu=menubar)
root.mainloop()