Пользовательский значок в gtk toggle_action - PullRequest
1 голос
/ 06 марта 2011

У меня есть следующий код, который добавляет значок панели инструментов "gtk-info" (со склада) в окно Python Gtk +.Я хотел бы иметь собственный значок вместо.Как бы я это сделал?

    self.action = ('ActivateSqueezeboxMode','gtk-info', _('SqueezeboxTools'),
                    None, _('Activate Squeezebox mode'),
                    self.activate_button_press, True)
    self.action_group = gtk.ActionGroup('SqueezeboxPluginActions')
    self.action_group.add_toggle_actions([self.action])
    uim = self.shell.get_ui_manager()
    uim.insert_action_group (self.action_group, 0)
    self.ui_id = uim.add_ui_from_string(context_ui)
    uim.ensure_update()

1 Ответ

1 голос
/ 08 марта 2011

Попробуйте это:

self.action = ('ActivateSqueezeboxMode', None, _('SqueezeboxTools'),
                None, _('Activate Squeezebox mode'),
                self.activate_button_press, True)
self.action_group = gtk.ActionGroup('SqueezeboxPluginActions')
self.action_group.add_toggle_actions([self.action])
# now get your action back out of the action group so you can modify it
action = self.action_group.get_action('ActivateSqueezeboxMode')
action.set_icon_name('my-custom-icon')

для использования именованного значка или

action.set_gicon(my_custom_gicon)

в качестве последней строки для использования gio.Icon (см., Например, gio.FileIcon.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...