c - 使用 xlib 窗口总是在最上面

标签 c linux xlib gtk2

我正在创建一个 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 确实有用。

关于c - 使用 xlib 窗口总是在最上面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30976731/

相关文章:

linux - "Kernel header files not in any of expected locations"编译ixgbe驱动时

linux - X系统下设置光标位置超出分辨率

同步闪存驱动器的 C 代码

c - 设置gtk比例尺的大小

linux - 当前目录中文件根目录有 2 个下划线的文件

C 和 xlib : Crash in XPending() in a very simple program

c++ - 使用X11/Xlib确定队列中是否有事件

c - 函数返回意外指针

c - 程序化 ALSA 环回

linux - 如何使用带有序列号的 Linux shell 变量?