Inhalt eines Labels löschen
Verfasst: Freitag 14. Oktober 2016, 09:03
Servus, ich habe jetzt mit TKinter begonnen und habe einen kleinen Converter geschrieben, dieser wandelt Zahlen aus dem Dezimal-System in ein beliebig Anderes bis Hexadezimal um. Nichts Großes, ist nur zum testen und "rein kommen" in TKinter.
Jetzt möchte man vielleicht, mehrere Zahlen konvertieren, und hier ist auch mein Problem:
Wenn ich eine neue Zahl konvertiere, ist das Ergebnis von der davor noch im Label gespeichert, wie kann ich das Ergebnis da heraus löschen?
Ich möchte nicht das Label an sich löschen, nur den Inhalt!
Hier mal mein Code: falls ihr euch wundert was in Zeile 50 steht? ich weis es auch nicht xD das kam jetzt von dem Forum...
Ich habe aus eigenen Recherchen leider nicht herausgefunden, nur wie man das ganze Label löscht(.forget()), aber das will ich ja gar nicht.
Ich würde mich echt über eine Antwort freuen, Vielen Dank
MfG
maui.py
Jetzt möchte man vielleicht, mehrere Zahlen konvertieren, und hier ist auch mein Problem:
Wenn ich eine neue Zahl konvertiere, ist das Ergebnis von der davor noch im Label gespeichert, wie kann ich das Ergebnis da heraus löschen?
Ich möchte nicht das Label an sich löschen, nur den Inhalt!
Hier mal mein Code: falls ihr euch wundert was in Zeile 50 steht? ich weis es auch nicht xD das kam jetzt von dem Forum...
Code: Alles auswählen
from tkinter import *
hexValue = {10: "A", 11: "B", 12: "C", 13: "D", 14: "E", 15: "F"}
valueList = []
def converter():
num = int(inp_num.get())
stat = False
while not stat:
if num > 0:
rest = num % lib_sys.get("active")
if lib_sys.get("active") > 10 and rest > 9:
valueList.append(hexValue[rest])
else:
valueList.append(rest)
num //= lib_sys.get("active")
else:
stat = True
make_string()
def erase():
lab_res["text"] = ""
def make_string():
valueList.reverse()
lab_res["text"] = (" ".join(str(x) for x in valueList))
main = Tk()
main["bg"] = "light grey"
main.title("Dec To")
main.geometry("305x150")
scb_sys = Scrollbar(main, orient="vertical")
scb_sys.grid(row=0, column=2, sticky="ns")
lib_sys = Listbox(main, height=4, yscrollcommand=scb_sys.set, font="Lucida 10 bold", relief="flat")
scb_sys["command"] = lib_sys.yview
lib_sys.insert("end", 2)
lib_sys.insert("end", 3)
lib_sys.insert("end", 4)
lib_sys.insert("end", 5)
lib_sys.insert("end", 6)
lib_sys.insert("end", 7)
lib_sys.insert("end", 8)
lib_sys.insert("end", 9)
lib_sys.insert("end", 10)
lib_sys.insert("end", 11)
lib_sys.insert("end", 12)
lib_sys.insert("end", 13)
lib_sys.insert("end", 14)
lib_sys.insert("end", 15)
lib_sys.insert("end", 16)
lib_sys.grid(row=0, column=1, sticky="we")
inp_num = Entry(main, text="Zahl", font="Lucida 10 bold", relief="flat")
inp_num.grid(row=0, column=0, sticky="we")
inp_num.grid(sticky="ns")
lab_res = Label(text="Ergebnis: ")
lab_res["font"] = "Lucida 10 bold"
lab_res["bg"] = "Grey"
lab_res["fg"] = "White"
lab_res["width"] = "35"
lab_res["relief"] = "flat"
lab_res.bind("<Return>", converter)
lab_res.grid(row=2, column=0, columnspan=2)
btn_convert = Button(main, text="Berechnen", command=converter, font="Lucida 10 bold", relief="flat")
btn_convert.grid(row=1, column=0, columnspan=2, sticky="we")
btn_erase = Button(main, text="Löschen", fg="white", bg="dark red", command=erase, font="Lucida 10 bold", relief="flat")
btn_erase.grid(row=3, column=0, sticky="we")
btn_quit = Button(main, text="Beenden", fg="white", bg="dark red", command=main.destroy, font="Lucida 10 bold", relief="flat")
btn_quit.grid(row=3, column=1, sticky="we")
mainloop()
Ich habe aus eigenen Recherchen leider nicht herausgefunden, nur wie man das ganze Label löscht(.forget()), aber das will ich ja gar nicht.
Ich würde mich echt über eine Antwort freuen, Vielen Dank
MfG
maui.py