Question

def activate(self,shell):
        self.shell = shell
        self.action = gtk.Action ('foo','bar','baz',None)
        self.activate_id = self.action.connect ('activate', self.call_bk_fn,self.shell)
        self.action_group = gtk.ActionGroup ('hot_key_action_group')
        self.action_group.add_action_with_accel (self.action, "<control>E")

        uim = shell.get_ui_manager ()
        uim.insert_action_group (self.action_group, 0)
        uim.ensure_update ()
def call_bk_fn(self,shell):
                print('hello world')

Je suis en utilisant le code ci-dessus dans un plugin pour Rhythmbox, et ici, je suis en train d'enregistrer le ctr + touche e afin que le call_bk_fn est appelée chaque fois que la combinaison de touches, mais sa ne fonctionne pas pourquoi est-ce pas?

Était-ce utile?

La solution

Une chose que je ne remarque est que votre rappel devrait être comme ceci:

def call_bk_fn(self, event, shell):
    print('hello world')

espère que cela peut aider :), si vous avez encore un problème, je pense que vous devriez nous donner plus d'informations sur les erreurs qui sont soulevées.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top