Ich hab ein kleines Problem mit Tkinter. Ich möchte nämlich bei der Schrift die Größe ändern. Befehle wie
Code: Alles auswählen
button["fontsize"]=30
Tidde[/code]
Code: Alles auswählen
button["fontsize"]=30
Code: Alles auswählen
button.config(font=('Arial', 30))
Code: Alles auswählen
from Tkinter import *
kzaehler=1
def klick(button):
global kzaehler
if kzaehler%2 == 0:
button["background"]="red"
button["text"]="X"
button.config(font=("Arial", ))
else:
button["background"]="blue"
button["text"]="O"
button.config(font=('Arial', 5))
button["state"]=DISABLED
kzaehler=kzaehler+1
fenster=Tk()
f1=Frame(fenster)
f1.pack(side=TOP)
fz=1
for z in range(3):
fx=Frame(f1)
fx.pack(side=TOP)
for y in range(3):
button=Button(fx)
button["height"]=11
button["width"]=20
button.pack(side=LEFT)
button["command"]=lambda p1=button: klick(p1)
fz=fz+1
fenster.mainloop()
Gewiss - in der Regel ist das auch das gewünschte Verhalten.Tidde hat geschrieben:Bei mir ändert sich da jetzt auch die Größe der Felder...
Code: Alles auswählen
import random
import Tkinter as tk
from functools import partial
def groesse_aendern(e, button):
button.config(font=('Arial', random.randint(5, 20)))
win = tk.Tk()
buttons = []
for i in range(3):
button = tk.Button(win, font=('Arial', 10), text=10*'x')
button.bind('<1>', partial(groesse_aendern, button=button))
button.grid(row=0, column=i, pady=2, padx=2)
win.mainloop()
Code: Alles auswählen
import Tkinter as tk
from functools import partial
from itertools import count
def klick(button, zaehler):
if zaehler.next() % 2 == 0:
button.config(background='red', text='X', font=('Arial', 10))
else:
button.config(background='blue', text='O', font=('Arial', 5))
button.config(state=tk.DISABLED)
def main():
fenster = tk.Tk()
frame = tk.Frame(fenster)
frame.pack(side=tk.TOP)
zaehler = count()
for i in xrange(3):
for j in xrange(3):
button = tk.Button(frame, text=' ', font='Arial 10')
button.config(command=partial(klick, button, zaehler))
button.grid(row=i,
column=j,
ipadx=20,
ipady=20,
sticky=tk.N+tk.E+tk.S+tk.W)
fenster.mainloop()
if __name__ == "__main__":
main()