不确定是否正确标记了字幕。但基本上我试图在gtk3中编写一个小程序,运行在xubuntu和xfce上,将gif设置为桌面背景。我可以使用gtk_window_set_keep_below()将窗口保持在所有其他窗口的下方。但桌面启动器/图标仍然在它下面。我也希望窗口的行为像墙纸,所以当我右键点击它,你会得到正常的桌面右键菜单。这些事情甚至可以使用gtk?我查看了api,但什么都没发现。有任何想法吗?GTK窗口作为桌面背景,如何降低堆叠顺序
到目前为止,除了我描述的两种行为之外,我拥有一切。 这里是我用来创建窗口的代码。
static void activate (GtkApplication* app, gpointer user_data)
{
GtkWidget *window;
GtkWidget *layout;
GtkWidget *image;
window = gtk_application_window_new (app);
layout = gtk_layout_new(NULL, NULL);
image = gtk_image_new_from_file("/some/path/pic.gif");
gtk_container_add(GTK_CONTAINER (window), layout);
gtk_widget_show(layout);
gtk_layout_put(GTK_LAYOUT(layout), image, 0, 0);
gtk_window_set_title (GTK_WINDOW (window), "Window");
gtk_window_set_default_size (GTK_WINDOW (window), 500, 340);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_widget_set_app_paintable(window, TRUE);
gtk_window_set_type_hint((GtkWindow*)window, (GdkWindowTypeHint)GDK_WINDOW_TYPE_HINT_DESKTOP);
gtk_window_set_decorated((GtkWindow*)window, 0);
gtk_window_set_keep_below((GtkWindow*)window, 1);
gtk_window_set_accept_focus((GtkWindow*)window, 0);
gtk_widget_show_all (window);
}
你为不相关语言添加标签的原因是什么? – Olaf
不是。固定。 – Cey
你不明白我的意见。要清楚:不要发送垃圾邮件标签! C和C++是不同的语言! – Olaf