Я бы хотел изменить цвет переднего плана выбранного элемента в выпадающем списке. Сам комбобокс создается из цикла for. a
Вот пример того, что я пробую:
package require Tk
toplevel .win2
set Default zero
for {set i 0} {$i <=10} {incr i} {
ttk::combobox .win2.c_Numbers\_$i -textvariable Default -style TCombobox -values \
[list {one} {two} {threre} {four} {five} {six} ]
grid config .win2.c_Numbers\_$i -column 0 -row $i -sticky "w"
bind .win2.c_Numbers\_$i <<ComboboxSelected>> {change [%W get]}
}
proc change {var1} {
puts "Selected Number: $var1"
ttk::style configure TCombobox -foreground red
}
Все записи выделяются красным цветом при выборе одной записи. Я понимаю, что <<ComboboxSelected>>
генерирует внутренний "вызов" для этого конкретного списка, возвращая выбранную запись, запрашивая ее в puts "Selected Number: $var1"
. Есть ли способ для <<ComboboxSelected>>
вывести идентификатор / имя выбранного выпадающего списка? Тогда я смогу раскрасить записи только этого конкретного выпадающего списка ... или есть обходной путь, которого я не вижу?
Заранее спасибо за ваши предложения.