Gtk :: ScaleButton:构造函数中的图标

时间:2014-12-04 12:04:44

标签: c++ gtk gtkmm

我正在尝试在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"

我如何避免警告并给它提供股票图标?

1 个答案:

答案 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