我正在尝试在Gtkmm 3中使用Gtk :: ScaleButton。我的问题是构造函数。它需要作为最后一个参数(参见这里:https://developer.gnome.org/gtkmm/stable/classGtk_1_1ScaleButton.html#a96753b6cb6b8adb0ed3727ba3eb8cfb7)ustrings的向量。我想(我无法在文档中找到它的含义)我必须给它+ +-图像的路径。我想使用Gtk Stock项目+/-。我怎样才能做到这一点?
目前我给它一个空矢量,这会产生一个glibmm警告:
std::vector<Glib::ustring> icons;
Gtk::ScaleButton * scale = Gtk::manage(new Gtk::ScaleButton(Gtk::ICON_SIZE_SMALL_TOOLBAR, 0.0, 10.0, 1.0, icons));
警告:
glibmm-WARNING **: Glib::ConstructParams::ConstructParams(): object class "gtkmm__GtkScaleButton" has no property named "min"
我如何避免警告并给它提供股票图标?
答案 0 :(得分:0)
你必须是第一批尝试使用gtkmm的Gtk :: ScaleButton构造函数的人之一。它似乎已经被打破了几年。
我已将其修复为gtkmm:https://git.gnome.org/browse/gtkmm/commit/?id=26f94d231da9481d74acdd94e56168ed6b38609a
但是,通过Linux发行版软件包可以广泛使用它。在此期间,您可以尝试使用
Gtk::ScaleButton* button = Glib::wrap(gtk_scale_button_new(whatever));
请参阅https://developer.gnome.org/gtkmm-tutorial/stable/sec-basics-gobj-and-wrap.html.en
但是,我不知道它的实际意义如何,因此您可能会遇到其他错误。您可能实际上想要使用派生的Gtk :: VolumeButton。
andlabs是正确的,GTK +文档更好地描述了图标: https://developer.gnome.org/gtk3/stable/GtkScaleButton.html#GtkScaleButton--icons 那些应该可能是标准的图标名称: http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html