ich vermute Du suchst sowas.
Code: Alles auswählen
import tkinter as tk
from tkinter import font
from functools import partial
def main():
root = tk.Tk()
schrift_1 = ('DAVIS', '12', 'bold')
schrift_2 = ('C059', '16', 'normal', 'italic')
taste = tk.Button(root, height=3, bd=5)
zeile_1 = tk.Label(taste, height=1, text='abc', font=schrift_1, width=5,
relief='flat', fg='red')
zeile_2 = tk.Label(taste, height=1, text='ABC', font=schrift_2, width=5,
relief='flat', fg='green')
taste.config(command=partial(wechsle, zeile_1, zeile_2, schrift_1,
schrift_2))
zeile_1.bind('<Button-1>', partial(betaetigt, zeile_1, zeile_2, schrift_1,
schrift_2, taste))
zeile_2.bind('<Button-1>', partial(betaetigt, zeile_1, zeile_2, schrift_1,
schrift_2, taste))
zeile_1.bind('<ButtonRelease-1>', partial(losgelassen, taste))
zeile_2.bind('<ButtonRelease-1>', partial(losgelassen, taste))
taste.pack(fill='x')
zeile_1.pack()
zeile_2.pack()
root.mainloop()
def wechsle(zeile_1, zeile_2, schrift_1, schrift_2):
if zeile_1['font'] == 'DAVIS 12 bold':
zeile_1.config(font=schrift_2)
zeile_2.config(font=schrift_1)
zeile_1.config(fg='green')
zeile_2.config(fg='red')
else:
zeile_1.config(font=schrift_1)
zeile_2.config(font=schrift_2)
zeile_2.config(fg='green')
zeile_1.config(fg='red')
def losgelassen(taste, event):
taste.config(relief='raised')
def betaetigt(zeile_1, zeile_2, schrift_1, schrift_2, taste, event):
wechsle(zeile_1, zeile_2, schrift_1, schrift_2)
taste.config(relief='sunken')
if __name__ == '__main__':
main()