Hallo Leute,
Ich habe jetzt verzweifelt überall gesucht und so weiter aber ich finde nichts oder die Tutorials sind scheisse. Ich bin ein Python Anfänger und wahrscheinlich sollte ich mir mal ein Buch zu dem Thema kaufen usw aber egal:
Mein Problem ist eigentlich ganz primitiv aber irgendwie bin ich zu blöd dafür. Ich will ein Entry widget einfach nur auslesen:
Eine Zeile wo man was eingibt und auf Knopfdruck soll der Inhalt irgendwo erscheinen von mir aus auch in der shell. Hauptsache ich kriegs mal angezeigt. Das mit dem Fenster und widgets erstellen ist kein Problem. Nur wie kann ich mit einer Funktion den Inhalt des Entry widgets auslesen und irgendwo verwerten?
Ich hoffe ihr könnt mir helfen, ich finde das Problem nicht. Könnte mir einfach mal jemand eine mögliche Lösung schicken?
Ps:manchmal steht statt dem entry Inhalt etwas in der Art da: {! Entry}
Vlt hilfts ja und ihr könnt mir auch noch das Problem nennen
Entry widget Inhalt ausgeben
Alles was man braucht steht auch im ersten link bei google. https://effbot.org/tkinterbook/entry.htm
Wenn das trotzdem nicht klappt, dann liegt das schon an DEINEM Code.
Wenn das trotzdem nicht klappt, dann liegt das schon an DEINEM Code.
Also Ich bin jetzt am RPi und habe mal den Code aus dem Internet abgetippt. Trotzdem klappt es nicht. Vlt ist es ein Schreibfehler oder so aber es hakt bei print e.get. Der Code:
Tja was ist der Fehler? Die Fehlermeldung war:
Traceback (most recent call last):
File "/home/pi/Programme/entryWidgetTest.py", line 8
print e.get()
^
SyntaxError: invalid syntax
Ich hoffe ihr könnt mir helfen
Code: Alles auswählen
from tkinter import *
master=Tk()
e=Entry(master)
e.pack()
e.focus_set()
def callback():
print e.get()
b=Button(master,command=callback,text="Callback",width=10)
b.pack()
mainloop()
e=Entry(master,width=50)
e.pack()
text=e.get()
def makeentry(parent, caption,width=None, **options):
Label(parent,text=caption).pack(side=LEFT)
entry=Entry(parent, **options)
if width:
entry.config(width=width)
entry.pack(side=Left)
return entry
user =makeentry(parent, "User Name:",10)
password=makeentry(parent, "Password:",10 show="*")
content=StringVar()
entry=Entry(parent, text=caption,textvariable=content)
text=content.get()
content.set(text)
Traceback (most recent call last):
File "/home/pi/Programme/entryWidgetTest.py", line 8
print e.get()
^
SyntaxError: invalid syntax
Ich hoffe ihr könnt mir helfen
Seit Python 3 ist print eine Funktion.
Code: Alles auswählen
print(e.get())
@Mister: das ist alles eine Aneinanderreihung von Codeschnipseln, die Du irgendwo abgetippt hast, so aber keinen Sinn ergeben.
`tkinter` wird über `import tkinter as tk` eingebunden und alle Namen per tk.xy angesprochen; *-Importe sind schlecht. Dann solltest Du bessere Variablennamen benutzen. `e` wird zwei mal verwendet. `text` wird nie verwendet, macht so auch keinen Sinn, denn zu dem Zeitpunkt konnte noch gar nichts eingegeben werden. `parent` ist gar nicht definiert. Müßte wohl `master` sein. Außerdem solltest Du Dich entscheiden, ob Du StringVar benutzt oder nicht. In der Zeile mit `password` fehlt ein Komma; mainloop ist irgendwo mitten drin.
Programmieren muß man lernen, es hilft nicht, irgendwas zusammenzukopieren und zu hoffen, dass da was sinnvolles rauskommt.
`tkinter` wird über `import tkinter as tk` eingebunden und alle Namen per tk.xy angesprochen; *-Importe sind schlecht. Dann solltest Du bessere Variablennamen benutzen. `e` wird zwei mal verwendet. `text` wird nie verwendet, macht so auch keinen Sinn, denn zu dem Zeitpunkt konnte noch gar nichts eingegeben werden. `parent` ist gar nicht definiert. Müßte wohl `master` sein. Außerdem solltest Du Dich entscheiden, ob Du StringVar benutzt oder nicht. In der Zeile mit `password` fehlt ein Komma; mainloop ist irgendwo mitten drin.
Programmieren muß man lernen, es hilft nicht, irgendwas zusammenzukopieren und zu hoffen, dass da was sinnvolles rauskommt.
- __blackjack__
- User
- Beiträge: 14092
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Mister: Ergänzend zu Sirius3: Jede nicht-triviale GUI setzt letztlich objektorientierte Programmierung voraus, das heisst es reicht auch nicht nur die Anfänge zu lernen, das muss man dann schon wirklich *richtig* lernen und da auch entsprechend Zeit für einplanen.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
Sirius3 hat geschrieben: Sonntag 26. Januar 2020, 00:08 @Mister: das ist alles eine Aneinanderreihung von Codeschnipseln, die Du irgendwo abgetippt hast, so aber keinen Sinn ergeben.
`tkinte
Hab ich von der Internetseite vom 1. Link auf Google abgetippt wo ja alles ist was man brauch. Toller Tipp.
- __blackjack__
- User
- Beiträge: 14092
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Mister: Da hat __deets__ wohl als gegeben vorausgesetzt das so eine graue Masse zwischen den Ohren zum denken und der Wille die auch zu benutzen vorhanden ist, und das man natürlich auch Python können muss bevor man GUIs in Python programmiert.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
Auf der von Dir verlinkten Seite kommt leider nicht so recht zum Ausdruck, dass die Zeilen, die Du abgeschrieben hast, kein Beispiel ist, wie man Entry anwendet sollte, sondern nur verschiedenste Code-Schnipsel (von geringer Qualität), wie Entry irgendwo eingesetzt wurde.
Oof das hat wehgetan. Vielen Dank dafür auch..__blackjack__ hat geschrieben: Sonntag 26. Januar 2020, 11:04 @Mister: Da hat __deets__ wohl als gegeben vorausgesetzt das so eine graue Masse zwischen den Ohren zum denken und der Wille die auch zu benutzen vorhanden ist, und das man natürlich auch Python können muss bevor man GUIs in Python programmiert.
Könnte man einer lebenden Person durch den Schädel ins Gehirn blicken, sähe man eine eher beige-rosa Schicht, wie dieses Bild, das während einer Operation aufgenommen wurde, eindrücklich zeigt. Die rötliche Farbe kommt von den zahlreichen Blutgefäßen, die dafür sorgen, dass unser Denkorgan mit genügend Sauerstoff und Nährstoffen versorgt ist. Und an beidem hat ein arbeitendes Gehirn reichlich Bedarf.
https://www.spektrum.de/frage/sind-die- ... au/1421089
Was hat deets denn da vorausgesetzt? Hat er etwa eine graue Masse zwischen seinen Ohren? Graue Zellen sind nämlich tot. Das ist aber nicht gut. Ich bleibe bei meiner rosa Masse, danke.
https://www.spektrum.de/frage/sind-die- ... au/1421089
Was hat deets denn da vorausgesetzt? Hat er etwa eine graue Masse zwischen seinen Ohren? Graue Zellen sind nämlich tot. Das ist aber nicht gut. Ich bleibe bei meiner rosa Masse, danke.
@Mister: so etwas nennt man Redewendung, ein rhetorisches Stilmittel.
Redewendung: feste Verbindung von Wörtern, die zusammen eine bestimmte, meist bildlich-metaphorische Bedeutung haben.
Ich hoffe ich konnte dir so viel beibringen wie du mir mit deinem obigen Post.
Übrigens ist das Gehirn tatsächlich grau, nur so lange es durchblutet ist nimmt es eine rötliche Farbe an.
Redewendung: feste Verbindung von Wörtern, die zusammen eine bestimmte, meist bildlich-metaphorische Bedeutung haben.
Ich hoffe ich konnte dir so viel beibringen wie du mir mit deinem obigen Post.
Übrigens ist das Gehirn tatsächlich grau, nur so lange es durchblutet ist nimmt es eine rötliche Farbe an.
Ich habe genau das vorausgesetzt, was du selbst behauptet hast: es gibt ein Programm, alles „kein Problem“ - nur das entry widget auszulesen fehlt. Um dir da einen Tipp zu geben habe ich auf die Dokumentation verwiesen. Mit keinem Wort habe ich vorgeschlagen, den Code darin ohne Sinn und verstand zusammen zu kloppen. Das ist schon deine „Eigenleistung“.Mister hat geschrieben: Montag 27. Januar 2020, 09:48 Was hat deets denn da vorausgesetzt? Hat er etwa eine graue Masse zwischen seinen Ohren? Graue Zellen sind nämlich tot. Das ist aber nicht gut. Ich bleibe bei meiner rosa Masse, danke.
Und den Spruch mit der grauen Masse ist im Übrigen von __blackjack__. Jetzt mich dafür anzugehen zeugt also von wenig ausgebildeter Lesekompetenz, Durchblutung hin oder her.
OK sorry _deets_. Nach vorheriger ausführlicher Überlegung mit meiner "Grauen Masse" entschuldige ich mich vielmals.__deets__ hat geschrieben: Montag 27. Januar 2020, 14:19
Und den Spruch mit der grauen Masse ist im Übrigen von __blackjack__. Jetzt mich dafür anzugehen zeugt also von wenig ausgebildeter Lesekompetenz, Durchblutung hin oder her.