我正在创建一个gtk2应用程序,我希望它可以在任何时候覆盖所有其他应用程序,如果可能的话,我宁愿使用xlib来实现这一点
这是我目前的代码:

#include <gtk/gtk.h>

int main(int argc, char **argv)
{
        gtk_init(&argc, &argv);
        GtkWidget     *mainwin;
        mainwin = gtk_window_new (GTK_WINDOW_TOPLEVEL);
        gtk_widget_show_all (mainwin);
        gtk_main ();
        return 0;
}

我想用最简单的方式
谢谢

最佳答案

是的,这是可能的,并不复杂

#include <gtk/gtk.h>

int main(int argc, char **argv)
{
  gtk_init(&argc, &argv);
  GtkWidget     *mainwin;
  mainwin = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  gtk_window_set_keep_above ( (GtkWindow *) mainwin, TRUE);
  gtk_widget_show_all (mainwin);
  gtk_main ();
  return 0;
}

如果窗口管理器是合作的,则gtk_window_set_keep_above会起作用。

07-24 15:28