Anfängerproblem (undefined variable)
Verfasst: Dienstag 31. März 2020, 21:17
Servus Forum,
ich bin Python Anfänger, kann ich aber echt mit der Syntax von Python anfreunden. Damit das auch so bleibt, bitte ich euch um Hilfe. Denn inzwischen sitze ich drei Stunden vor der gleichen Zeile.
Das Problem ist das definieren des Buttons b1, hier speziell am "command". Ohne das "command" geht es... aufgerufen werden soll die nächste Funktion "farbeaendern", egal ob dann Sinn macht oder nicht. Ich hatte auch versucht beim "command" eine Farbe mitzugeben. Das ändert aber alles nichts an der Tatsache, das die Funktion farbeaendern für Eclipse nicht definiert ist. Obwohl sie vor der aufrufenden Funktion steht (darauf bin ich nämlich auch schon reingefallen).
Das sind wirklich nur Tests für mich, bitte sucht nicht nach dem Sinn des Codings
Ich danke euch und viele Grüße
Marco
import tkinter as tk
from tkinter import *
from tkinter import Button
class Schreibgeraete():
def __init__(self, typ, loeschbar, spitzen_breite, nachfuellbar, farbe):
self.typ = typ
self.loeschbar = loeschbar
self.spitzen_breite = spitzen_breite
self.nachfuellbar = nachfuellbar
self.farbe = farbe
def farbeaendern(self,farbe):
self.farbe = farbe
def farbeauswaehlen(self):
f1 = tk.Tk()
b1 = Button(master=f1,text="farbe_in_blau_aendern",command=farbeaendern) <--- hier ist das Problem undefined variable
b1.pack()
f1.mainloop()
point88 = Schreibgeraete("fineliner", "nein", 1, False, "schwarz")
print (point88.farbe)
point88.farbeauswaehlen()
print (point88.farbe)
ich bin Python Anfänger, kann ich aber echt mit der Syntax von Python anfreunden. Damit das auch so bleibt, bitte ich euch um Hilfe. Denn inzwischen sitze ich drei Stunden vor der gleichen Zeile.
Das Problem ist das definieren des Buttons b1, hier speziell am "command". Ohne das "command" geht es... aufgerufen werden soll die nächste Funktion "farbeaendern", egal ob dann Sinn macht oder nicht. Ich hatte auch versucht beim "command" eine Farbe mitzugeben. Das ändert aber alles nichts an der Tatsache, das die Funktion farbeaendern für Eclipse nicht definiert ist. Obwohl sie vor der aufrufenden Funktion steht (darauf bin ich nämlich auch schon reingefallen).
Das sind wirklich nur Tests für mich, bitte sucht nicht nach dem Sinn des Codings
Ich danke euch und viele Grüße
Marco
import tkinter as tk
from tkinter import *
from tkinter import Button
class Schreibgeraete():
def __init__(self, typ, loeschbar, spitzen_breite, nachfuellbar, farbe):
self.typ = typ
self.loeschbar = loeschbar
self.spitzen_breite = spitzen_breite
self.nachfuellbar = nachfuellbar
self.farbe = farbe
def farbeaendern(self,farbe):
self.farbe = farbe
def farbeauswaehlen(self):
f1 = tk.Tk()
b1 = Button(master=f1,text="farbe_in_blau_aendern",command=farbeaendern) <--- hier ist das Problem undefined variable
b1.pack()
f1.mainloop()
point88 = Schreibgeraete("fineliner", "nein", 1, False, "schwarz")
print (point88.farbe)
point88.farbeauswaehlen()
print (point88.farbe)