Hi Kapf
Kapf hat geschrieben:Der Button sollte also dauerhaft "raised" sein. Gibt es da eine Möglichkeit?
Ja gibt es. Hierfür würde ich ein Label-Widget einsetzen:
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import Tkinter as tk
from functools import partial
script_name = sys.argv[0]
MAIN_WIN_XPOS = 10
MAIN_WIN_YPOS = 10
MAIN_WIN_WIDTH = 200
MAIN_WIN_HEIGHT = 100
def button_callback(state, event):
if state:
event.widget.config(fg='red')
else:
event.widget.config(fg='black')
def main():
app_win = tk.Tk()
app_win.geometry("%dx%d+%d+%d" % (MAIN_WIN_WIDTH, MAIN_WIN_HEIGHT,
MAIN_WIN_XPOS, MAIN_WIN_YPOS))
app_win.title(script_name)
label_button = tk.Label(app_win, text='Label-Button', relief='raised',
cursor='hand1', font=('Helveticat', 20))
label_button.pack(expand='yes')
label_button.bind('<Button-1>', partial(button_callback, True))
label_button.bind('<ButtonRelease-1>', partial(button_callback, False))
app_win.mainloop()
if __name__ == '__main__':
main()
Gruß wuf