clojure/seesaw 中组合框的所有选项
All options for combobox in clojure/seesaw
所以我创建了一些组合框,其中包含按字母顺序排列的各种元素。我不希望我的菜单上的默认选择是最高值;相反,我希望它成为最常选择的值。在 swing 中,我可以调用成员函数 setSelectedIndex()
并简单地传入最流行的菜单值的索引。我怎样才能在跷跷板上做到这一点? seesaw 文档说选项是 :model
和 :renderer
,但我找不到任何允许我设置默认索引的东西...
我还缺少其他文档吗?
有一个函数selection!
你可以使用:
(defn combotest []
(let [w (frame :title "Combobox Test" :width 200 :height 80)
combo (combobox :model ["A" "B" "C"])
pnl (horizontal-panel :items [combo])]
(config! w :content pnl)
(selection! combo "C") ;; <--- boom ---
(show! w)))
此外,这些仍然是我们正在使用的 Swing 项目,所以在一天结束时,我们还可以:
(.setSelectedIndex combo 2)
所以我创建了一些组合框,其中包含按字母顺序排列的各种元素。我不希望我的菜单上的默认选择是最高值;相反,我希望它成为最常选择的值。在 swing 中,我可以调用成员函数 setSelectedIndex()
并简单地传入最流行的菜单值的索引。我怎样才能在跷跷板上做到这一点? seesaw 文档说选项是 :model
和 :renderer
,但我找不到任何允许我设置默认索引的东西...
我还缺少其他文档吗?
有一个函数selection!
你可以使用:
(defn combotest []
(let [w (frame :title "Combobox Test" :width 200 :height 80)
combo (combobox :model ["A" "B" "C"])
pnl (horizontal-panel :items [combo])]
(config! w :content pnl)
(selection! combo "C") ;; <--- boom ---
(show! w)))
此外,这些仍然是我们正在使用的 Swing 项目,所以在一天结束时,我们还可以:
(.setSelectedIndex combo 2)