2013-01-16 7 views
5

Ich versuche, die Unterschiede zwischen Notify (Python-Wrapper) und pynotify zu verstehen. Zum Beispiel:Was sind die Unterschiede zwischen Notify und pynotify?

from gi.repository import Notify 

und

import pynotify 

Der Code wird eine Benachrichtigung sieht ähnlich zu schaffen, aber es scheint, dass ich nicht python3.3 mit importieren pynotify können. Übrigens kann ich mit Notify keine Möglichkeit finden, Buttons mit Signalhandlern zu erstellen. Gibt es eine Möglichkeit, pynotify in Python3.3 zu importieren oder Buttons mit Notify zu erstellen?
Und was ist der Unterschied zwischen diesen beiden Modulen?
Ich habe auf der Suche im Internet, aber es scheint, dass ich nicht genug mit Google qualifizierte u_u
Vielen Dank im Voraus.

+1

Sie sollten sich ['notify2'] (http://pypi.python.org/pypi/notify2) ansehen. Siehe auch ihre [bitbucket page] (https://bitbucket.org/takluyver/pynotify2/ src). – doru

Antwort

6

Sie sind zwei Versionen des gleichen Materials: eine Python-Bindung für libnotify. Aber import pynotify war die ältere Art, es zu tun, in der GTK2 Zeiten. Da gtk3 enthalten GObject instrospection, sollten Sie die gi.repository Sache verwenden (Das "Gi" steht für "Gobject Introspection").

Der Hauptunterschied zwischen der alten Methode und der neuen GI-Methode besteht darin, dass mit GI die Python- (oder C# -, C++ -, Vala- oder andere) Bindungen nicht manuell erstellt werden müssen. Es ist vollständig automatisch, so dass Sie die neuen Versionen verwenden können, ohne auf die Freigabe warten zu müssen. Es vermeidet viele Bugs, die durch die manuelle Handhabung der Bindungen verursacht werden.

+0

Danke! :) Gibt es ein Dokument irgendwo für GI? – Depado

+0

Ich habe es in meine Antwort aufgenommen :-) https://live.gnome.org/GObjectIntrospection –

+0

Vielen Dank. Ich wusste eigentlich nicht, dass es auch eine "add_button" -Methode gab. Ich nehme an, es wurde aus der alten Bibliothek übernommen. – Depado

Verwandte Themen