2015-04-11 1 views
0

Как изменить iwidgets::combobox выбранное значение в tcl/tk?изменить iwidgets :: combobox выбранное значение tcl/tk

variable check [iwidgets::combobox .check -labeltext "aaaa" -selectioncommand aaa_update] 
eval .check insert list 0 aaa bbb 

Я пробовал следующее и не работает. (set ::check_tech "bbb")

+0

Мне нужно что-то вроде -variable в виджетах checkbutton –

ответ

0

Чтобы управлять тем, что выбран, используется selection метод:

.check selection clear 0 end 
.check selection set 1 

1 потому, что bbb является второй элемент в раскрывающемся списке ListBox, и Tcl/Tk рассчитывает индексы от нуля почти всегда (и определенно так в этом случае). Перед установкой необходимо очистить выделение, потому что базовая модель списка, используемая для включения combobox, поддерживает сразу несколько выбранных вещей, хотя в этом случае это не имеет особого смысла.

+0

Это не сработало. Я использую iwidgets :: combobox not ttk :: combobox. В GUI ничего не изменилось –

+0

Я решил проблему. Сопоставление должно быть доступно для редактирования. .check configure -editable true .check selection clear 0 end .check selection set 1 –

+0

Он работал, когда я тестировал и основывался непосредственно на материалах, которые вы написали, и документации, поэтому я ничего не говорил о государственных изменениях , Не знал, что мне придется искать их тоже ... –