在按钮上没有显示的储蓄象

abe*_*itz 12 python gtk pygtk

self.button = gtk.Button(stock=gtk.STOCK_DELETE)
Run Code Online (Sandbox Code Playgroud)

仅显示:删除

Max*_*ude 14

用于设置属性而不必更改任何系统配置文件的Python等价物是:

settings = gtk.settings_get_default()
settings.props.gtk_button_images = True
Run Code Online (Sandbox Code Playgroud)

这应该跟随对window.show()的调用,显然,在gtk.main()循环之前.

  • 如果有人想用 C 来做这件事,`GtkSettings *settings = gtk_settings_get_default(); g_object_set(settings, "gtk-button-images", TRUE, NULL);` 是等效的过程。 (2认同)

Dan*_*l G 9

这是GTK最近的一次变化 - 开发人员希望图标不会出现在按钮上.在Linux上,可以通过编辑gconf密钥来更改

/desktop/gnome/interface/buttons_have_icons
Run Code Online (Sandbox Code Playgroud)

在Windows上,我认为(我实际上没有尝试过这个)你需要在你的gtkrc文件中设置一个值(对我而言C:\Program Files\Gtk+\etc\gtkrc)并使用支持图标的主题(我认为默认的不是).

您也可以设置主题添加gtk-button-images = 1到您的~/.gtkrc-2.0文件中,该主题可能会超出选项范围gconf.

编辑回答你的评论:

就像这个答案一样,但在Python中:在Gtk中,如何使用股票图标制作一个Button?

对于python,它只是

image = gtk.Image()
#  (from http://www.pygtk.org/docs/pygtk/gtk-stock-items.html)
image.set_from_stock(gtk.STOCK_**)
button = gtk.Button()
button.set_image(image)
button.set_label("")
Run Code Online (Sandbox Code Playgroud)