WEB开发网
开发学院软件开发Python 在 Python 中封装 GObject 阅读

在 Python 中封装 GObject

 2007-03-29 12:14:54 来源:WEB开发网   
核心提示: t.add(gtk.Label("Hello"))TrayIcon 元素是 GTK+ 容器,所以您可以将任何东西添加到其中,在 Python 中封装 GObject(8),这里,我添加一个标签窗口小部件,幸运的是,在使用 gnome-python 代码生成器时,t.sh

t.add(gtk.Label("Hello"))

TrayIcon 元素是 GTK+ 容器,所以您可以将任何东西添加到其中。这里,我添加一个标签窗口小部件。

t.show_all()

gtk.main()

这里,我将窗口小部件设置为可视的,然后启动 GTK+ 主事件循环。

现在,如果您还未这样做,则将 Notification Area applet 添加到 GNOME 面板(在该面板上单击鼠标右键,然后选择“Add to Panel”-> Utility -> Notification Area)。运行该测试程序应该会在栏中显示“Hello”。很酷,不是吗?

图 1. Hello 示例

通知区还允许我们做什么?好,程序可以告诉通知区显示消息。该消息的实际显示方式是特定于实现的;目前,GNOME 通知区显示工具提示。我们可以通过调用 send_message() 函数发送消息。快速查看 API 可以得知它希望有超时和消息,所以它应该如下工作:

...
t = trayicon.TrayIcon("test")
...
t.send_message(1000, "My First Message")

但并不是那样。C 原型是 send_message(int timeout, char* message, int length) ,所以 Python API 还需要字符指针和长度。这确实起作用:

...
t = trayicon.TrayIcon("test")
...
message = "My First Message"
t.send_message(1000, message, len(message))

然而,这有点儿难看。这就是 Python;编程应该简单。如果我们坚持沿着这条路线,那么将以 C 告终,但是没有分号。幸运的是,在使用 gnome-python 代码生成器时,可以手工封装各个方法。

上一页  3 4 5 6 7 8 9 10  下一页

Tags:Python 封装 GObject

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接