首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未调用libnotify操作回调

未调用libnotify操作回调
EN

Stack Overflow用户
提问于 2013-06-21 00:33:50
回答 1查看 653关注 0票数 3

我正在尝试在gnome中创建一个简单的通知,当单击时将执行一些代码。下面的代码会编译并运行,但单击通知气泡不会执行任何操作。我找到的所有代码样本都表明这应该是可行的。

代码语言:javascript
复制
#include <stdlib.h>
#include <stdio.h>

#include <libnotify/notify.h>

void action(NotifyNotification *n, gchar *action, gpointer data) {
    system("gnome-terminal &");
}

int main(int argc, char **argv) {

    gtk_init(&argc, &argv);

    notify_init("MyApp");

    NotifyNotification *notification;
    notification = notify_notification_new("mynotification", "Hello", NULL, NULL);

    notify_notification_add_action(notification, "DoAction", "default",
            (NotifyActionCallback)action, NULL, NULL);

    notify_notification_show(notification, NULL);

    pause();

}

要编译:

代码语言:javascript
复制
gcc main.c `pkg-config --cflags --libs libnotify`

我在RHEL 6.4,gnome 2.82.2上。其他应用程序(例如firefox“下载完成”)也可以创建通知,在点击时执行操作;我只是不知何故做得不对。

EN

回答 1

Stack Overflow用户

发布于 2013-07-01 20:23:47

也有同样的问题。显然,您必须通过调用gtk_main或等效函数来使用GTK循环,而不是使用暂停/睡眠或其他非gtk阻塞函数。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17218995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档