Gtk::缩放按钮:构造函数中的图标

Gtk::ScaleButton: Icons in the constructor

本文关键字:图标 按钮 缩放 Gtk 构造函数      更新时间:2023-10-16

我正在尝试在 Gtkmm 3 中使用 Gtk::ScaleButton。我的问题是构造函数。它需要最后一个参数(见这里:https://developer.gnome.org/gtkmm/stable/classGtk_1_1ScaleButton.html#a96753b6cb6b8adb0ed3727ba3eb8cfb7)一个ustrings向量。我想(我在文档中找不到它到底是什么意思)我必须给它提供 +/- 图像的路径。我想将 Gtk 库存项目用于 +/-。我怎样才能做到这一点?

目前我给它一个空向量,这会导致 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"

如何避免警告并为其提供股票图标?

你一定是最早尝试使用这个 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