Все ники заняты
bialix
Попробуй state=DISABLED
Это, конечно, работает. Однако, мне не ясно назначение свойства “default”, собственно в этом и вопрос. Вопрос конечно не жизни и смерти :), но когда сталкиваешься с такими непонятками, это неприятно.
В доке сказано:
If set, the button is a default button. Tk will indicate this by drawing a platform specific indicator (usually an extra border). NOTE: The syntax has changed in 8.0b2!!!
Белиберда какая-то…
В другой доке:
If set, the button is a default button. Tkinter will indicate this by drawing a platform specific indicator (usually an extra border). The default is DISABLED (no default behavior). (default/Default)
В третьей доке:
NORMAL is the default; use DISABLED if the button is to be initially disabled
(grayed out, unresponsive to mouse clicks).
Дефолтный дефолт дефолтом погоняет…
В Win32 API default – это состояние кнопки, которая нажимается по умолчанию если в диалоге нажать Enter. Кажется так.
Вот пример с 3мя допустимыми значениями для default:
from Tkinter import *
root = Tk()
Button(root, text='ACTIVE', default=ACTIVE).pack()
Button(root, text='NORMAL', default=NORMAL).pack()
Button(root, text='DISABLED', default=DISABLED).pack()
root.mainloop()
1я кнопка имеет дополнительную черную рамку. Остальные 2 ничем не отличаются на винде.