c++ - 行背景颜色 GtkTreeView 小部件

标签 c++ gtk gtkmm gtktreeview

我正在尝试将 gtk TreeView 小部件中禁用的行着色为浅灰色。根据我所读到的内容,我应该设置相应 cellrenderer 的 background-gdk 属性并将其绑定(bind)到模型列。这种作品。

Gtk::CellRendererText* textRenderer = manage(new Gtk::CellRendererText());
textRenderer->property_editable() = false;
Gtk::TreeViewColumn *col = manage(new Gtk::TreeViewColumn("Column1", *textRenderer));
col->add_attribute(*textRenderer, "background-gdk", m_treeview_columns.m_back_color);
my_treeview.append_column(*col);

Gtk::TreeModel::Row row;
for (int i = 0; i < NUMBER_OF_ROWS; iLane++){
   row = *(treeview_liststore->append());
   row[m_workListColumns.m_back_color] = Gdk::Color("#CCCCCC");
}

alt text

最后,我只得到了正确着色的单元格。但我在单元格之间也发现了一个丑陋的空白。有谁知道解决此问题的方法或更好的方法来实现我想要的效果?

最佳答案

您能否将行的背景设置为与单元格背景相匹配,或者将 TreeView 的背景全部设置在一起?或者也许是带有 cell-background-gdk 的单元格?

关于c++ - 行背景颜色 GtkTreeView 小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4196854/

相关文章:

c++ - Visual Studio重构后的调试与差异搜索

c++ - 当远程桌面 session 注销时,如何阻止 DLL 终止应用程序服务器?

c++ - GtkTreeView 列标题点击事件

c++ - 将Gtk::ListStore添加到Gtk::TreeView并将行添加到ListStore(gtkmm)

c++11 - 如何在 Gtk::DrawingArea 区域绘制一条新线,同时保留之前已经绘制的线?

c++ - GTest-如何通过SetUp方法为多次使用准备数据?

c++ - 在 Qt 中使用排队连接时如何压缩插槽调用?

python - gtk 像在 gtk.SpinButton 中一样创建小的向上 + 向下按钮

python - pyGTK/GTK filechooser - 是否可以在文件或文件夹写入光盘之前验证用户输入?

c - 当 gtk.paned slider 的位置发生变化时如何得到通知?