我认为您在正确的轨道上将标签放入组合框中并向标签添加工具提示。您可以为包含标签的组合框创建自定义列表存储。这是一次尝试,不是在 pygtk 中,而是在 guile-gnome 中(我的本地栖息地,抱歉!我稍后可能会尝试翻译为 pygtk)它运行,但尚未正确,标签未显示。
实际上,让 gtkcombobox 显示小部件(而不仅仅是文本)似乎是可能的,但很困难 -例如参见此处。它可能需要一个不属于基础库的自定义 GtkCellRendererWidget 类。
(use-modules (oop goops)
(gnome gtk))
(define w (make <gtk-window> #:title "combo demo"))
(connect w 'destroy (lambda args (gtk-main-quit)))
(define combo (make <gtk-combo-box>))
(define list-store (gtk-list-store-new `(,<gtk-label>)))
(set combo 'model list-store)
(define tooltips (gtk-tooltips-new))
(define (list-store-append-label-with-tooltip list-store text tip)
(let ((label (make <gtk-label> #:label "hello")))
(gtk-tooltips-set-tip tooltips label tip #f)
(gtk-list-store-set-value
list-store
(gtk-list-store-append list-store)
0
label)))
(list-store-append-label-with-tooltip list-store "hello" "first word")
(list-store-append-label-with-tooltip list-store "world" "second word")
(add w combo)
(show-all w)
(gtk-main)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
877 次 |
| 最近记录: |