Seite 1 von 1

Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 14:36
von Tom12
Hallo,
ich habe das Problem dass ich einen int() in einem label integrieren möchte bietet tkinter dazu eine Lösung
Momentan:

Richtige = int()

tkinter.Label(root, textvariable = Richtige)

allerdings habe ich ja einen int und keine var.

Bitte um Antwort bzw. Lösung

Re: Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 14:55
von wuf
Hi Tom12

Was hälst du hiervon:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

try:
    #~~ For Python 2.x
    import Tkinter as tk
except ImportError:
    #~~ For Python 3.x
    import tkinter as tk

app_win = tk.Tk()

my_int_var = tk.IntVar()

tk.Label(app_win, textvariable=my_int_var). pack(padx=10, pady=10)

my_int_var.set(1000)

print("Type:{}, Value:{}".format(type(my_int_var.get()), my_int_var.get()))

app_win.mainloop()
Gruss wuf :wink:

Re: Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 15:55
von Tom12
Hallo wuf,
Danke, kannte den Befehl IntVar() noch nicht funktioniert.
Allerdings möchte ich, dass wenn ein Button geklickt wird dem Int eins dazugezählt wird.
normalerweise würde es ja
Richtige + 1

sein allerdings bekomme ich den error:
unsupportet operand type(s) for +: "IntVar" and "int"

Re: Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 16:14
von __deets__
Eine IntVar enthält ein Int, ist a er keines. Statt += kannst du aber einen neuen wert mit var.set(wert) setzen. Und den aktuellen mit var.get() holen. Daraus bekommst du bestimmt was gebastelt.

Re: Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 16:19
von wuf
Hi Tom12

Kein Problem:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

try:
    #~~ For Python 2.x
    import Tkinter as tk
except ImportError:
    #~~ For Python 3.x
    import tkinter as tk

app_win = tk.Tk()

my_int_var = tk.IntVar()

tk.Label(app_win, textvariable=my_int_var, font=16). pack(padx=10, pady=10)
my_int_var.set(1000)

tk.Button(app_win, text="Addiere 1",
    command=lambda: my_int_var.set(my_int_var.get()+1)).pack(padx=10, pady=10)

app_win.mainloop()
Gruss wuf :wink:

Re: Int in Lable anzeigen

Verfasst: Samstag 24. Februar 2018, 16:27
von Tom12
Vielen Dank wuf,
funktioniert einwandfrei nun kann es weitergehen

MfG tom