首页 > 解决方案 > Gtkmm 标签未成功插入 ListBox

问题描述

从 Gtk::Builder 我重试了一个指向 Gtk::ListBox 的指针,该指针来自一个名为listbox_serverlist.

这是我认为总结的一小段代码:

Gtk::ListBox* listbox_serverlist;
builder->get_widget("listbox_serverlist", listbox_serverlist);

Gtk::Label l;
l.set_text("Test");
listbox_serverlist->insert(l, -1)

紧接着,我运行列表框所在的主窗口。

我的问题是,虽然列表框不为空,但其中肯定没有任何文本。我希望我的标签在列表框中显示为一个项目,但似乎只有一个可选项目,但它完全是空白的。

有没有我必须编写的代码来更新标签中的实际文本,或者类似的东西?

我希望我的问题很清楚,但我很乐意提供更多信息。

标签: c++gtk3gtkmm

解决方案


您必须插入一个ListBoxRow,然后将标签添加到该行。

或者,文档列出gtk_container_add()作为解决方案。

编辑

我不擅长 C++,但这样的事情应该可以解决问题:

Gtk::ListBoxRow* list_box_row;
list_box_row.add(l); //add label widget to row
listbox_serverlist.add(list_box_row);  //add row to listbox

推荐阅读