Übersetzungsprogramm

Fragen zu Tkinter.
Antworten
Benutzeravatar
jtschoch
User
Beiträge: 400
Registriert: Freitag 6. Mai 2011, 15:40
Kontaktdaten:

Hi Leute,

ich brauche wiedermal Hilfe

Ich bin gerade dabei ein Übersetzungsprogramm zu schreiben
aber ich griege es mit den übergeben nicht hin

#Uebersetzungsprogramm

Code: Alles auswählen

import Tkinter
import tkMessageBox
import Tkinter as tk
from Tkinter import *


#######################################################
def schreibeintemp():
  text = daten["Deutsch"]
  deutsch = open("temp.txt",'w')
  deutsch.write(text)
  deutsch.close()
#######################################################
def ausgabe(daten):
  root=Tkinter.Tk()
  textd = daten["Deutsch"]
  root.title("Uebersetzungsprogramm")
  root.config(bg = "#E3E2E9")
  woerterbuch = { 
              "Germany" : "Deutschland", 
              "Spain" : "Spanien", 
              "France" : "Frankreich" 
              }
  #deutsch = open("temp.txt",'r')
  #uebersetzung = deutsch.read()
  text = woerterbuch["" + textd]
  lausgabe = Tkinter.Label(root, text = "" + text,  bg = "#E3E2E9", fg = "black",  #Fabe: #E3EDFC"
                      font =('Arial', 11, 'bold'))

  lausgabe.grid(row = 1)
  deutsch.close()
  root.mainloop()
###################################################

         
def eingabe():
  
  root=Tkinter.Tk()
  root.title("Uebersetzungsprogramm")
  root.config(bg = "#E3E2E9")

  root.geometry('570x550')
  ldeutsch = Tkinter.Label(root, text = "Englishes Wort:",  bg = "#E3E2E9", fg = "black",  #Fabe: #E3EDFC"
                      font =('Arial', 11, 'bold'))


  ldeutsch.grid(row = 1)   

  edeutsch = Tkinter.Entry(root, relief = "ridge", bg = "#FFFFFF", fg = "red",
                        font =('Arial', 11, 'bold'))

  edeutsch.grid(row = 1, column = 1, ipadx = 50, padx = 4, pady = 20)
  edeutsch.insert(1, "")

  deutschu = edeutsch.get()

  OK=Button(text='Uebersetzen',command = ausgabe)

  OK.place(relx=0.45, rely=0.91, relwidth=0.20, relheight=0.08)
  root.mainloop()
  uebersetzung = {
       "Deutsch": deutschu
       }
  return uebersetzung

###############################################
daten = eingabe()
#schreibeintemp(daten)
ausgabe(daten)

  
Kuckt euch bitte den code an


------------------------------------------------------------------------------------
Noch was:

wie kann ich den Text Linksbündig machen
Meine Webseite http://www.develos.de
Forum: http://www.develos.de/forum
Mein Minecraft-Server: jonel.minecraft.to [dynmap(:8123)] | Webseite: http://jonel-minecraft.tk
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

jtschoch hat geschrieben: Ich bin gerade dabei ein Übersetzungsprogramm zu schreiben
aber ich griege es mit den übergeben nicht hin
Was willst Du uns damit sagen? Genauer: Was ist denn Dein Problem?
Du solltest doch mal mittlerweile gelernt haben, dass man seine Fragen hier präzise formulieren muss, sonst kann Dir niemand helfen ;-)

Kleiner Hinweis:

Code: Alles auswählen

with open(...) as handler:
    # handler ist hier file-Object
# handler ist hier automatisch geschlossen
Daeien sollte man immer mit diesem Idiom öffnen.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Benutzeravatar
jtschoch
User
Beiträge: 400
Registriert: Freitag 6. Mai 2011, 15:40
Kontaktdaten:

Probier es doch mal aus
Ich will das eingetragene wort übersetzen und ausgeben in Tkinter
Meine Webseite http://www.develos.de
Forum: http://www.develos.de/forum
Mein Minecraft-Server: jonel.minecraft.to [dynmap(:8123)] | Webseite: http://jonel-minecraft.tk
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

jtschoch hat geschrieben:Probier es doch mal aus
Wieso kannst Du nicht formulieren, was schief geht?
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Benutzeravatar
jtschoch
User
Beiträge: 400
Registriert: Freitag 6. Mai 2011, 15:40
Kontaktdaten:

Code: Alles auswählen

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1410, in __call__
    return self.func(*args)
TypeError: ausgabe() takes exactly 1 argument (0 given)
Meine Webseite http://www.develos.de
Forum: http://www.develos.de/forum
Mein Minecraft-Server: jonel.minecraft.to [dynmap(:8123)] | Webseite: http://jonel-minecraft.tk
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Und dann verrätst du uns noch, wann der Aufruf nicht funktioniert und was du vorher gemacht hast. Nicht, dass man es nicht aus dem Code sehen könnte, aber dann kannst du gleich noch einmal darüber nachdenken, warum es so nicht funktionieren kann. Die Fehlermeldung zu lesen hilft übrigens schon weiter ;-)
Das Leben ist wie ein Tennisball.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

@jtschoch
Das ist immer noch keine adequate Fehlerbeschreibung.

Du rufst im Kommando des Button die Funktion Ausgabe mit einer leere Parameter aus. Hierzu solltest du von den "functools" "partial" importieren und die Funktion mit Parametern übergeben. dh.

Code: Alles auswählen

ok = Button(text=u"Übersetzen", command=partial(ausgabe, daten))
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Benutzeravatar
jtschoch
User
Beiträge: 400
Registriert: Freitag 6. Mai 2011, 15:40
Kontaktdaten:

danke
Meine Webseite http://www.develos.de
Forum: http://www.develos.de/forum
Mein Minecraft-Server: jonel.minecraft.to [dynmap(:8123)] | Webseite: http://jonel-minecraft.tk
Antworten