Найти - Пользователи
Полная версия: Tkinter: Свойства highlightbackground и подобные, как применять?
Начало » GUI » Tkinter: Свойства highlightbackground и подобные, как применять?
1
Все ники заняты
Как правильно применять свойства виджетов highlightbackground, highlightcolor и highlightthickness, и зачем они вообще нужны?
from Tkinter import *
root = Tk()
btn1 = Button(root, text = "Button 1")
btn1["highlightbackground"] = "red"
btn1["highlightcolor"] = "red"
btn1["highlightthickness"] = 10
btn1.pack()
btn2 = Button(root, text = "Button 2")
btn2.pack()
root.mainloop()
Никаких различий между двумя кнопками не вижу, кроме размера (следствие установки свойства “highlightthickness”). При смене фокуса ничего не происходит. WinXP SP2, ActivePython 2.5. Что всё это значит? Читал tkinter.pdf (англ.), ничего не понял:
highlightbackground Color of the focus highlight when the widget does not have focus.
highlightcolor The color of the focus highlight when the widget has focus.
highlightthickness Thickness of the focus highlight.
Объясните, please, доступным языком.
Oz
Это Вобще нужно для управления фокусом Виджета..
( highlightbackground=Цвет рамки выделения когда виджет теряет фокус)
( highlightcolor=Цвет рамки в
ыделения когда виджет получает фокус)

Но что то эти Опции не работают. Но можно и так.
А изабыл (highlightthickness=Размер Виджета)- Это работает
Вот пример:
————————-
from Tkinter import *
root = Tk()
btn1 = Button(root,fg=“white”,text = “Button 1”)
btn1.tk_focusFollowsMouse()
def ev(event):
btn1 = “red”

def ev2(event):
btn1 = “Black”

def ev3(event):
btn2 = “red”

def ev4(event):
btn2 = “Black”

global btn1,btn2
btn1 = 10
btn1.bind('<FocusIn>',ev)
btn1.bind('<FocusOut>',ev2)
btn1.pack()
btn2 = Button(root,fg=“white”,text = “Button 2”)
btn2.bind('<FocusIn>',ev3)
btn2.bind('<FocusOut>',ev4)
btn2.pack()
root.mainloop()
Все ники заняты
Oz
Но что то эти Опции не работают.
Ага, вот и я о том же ;).
bialix
я думаю в винде эти опции не работают – я не знаю аналогов из Win32 API для подобных опций. Так что смело можешь выкинуть их из памяти.
Все ники заняты
Спасибо, понятно.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB