2015-06-22 3 views
0

Я нахожусь в процессе создания приложения gtk2, который я хотел бы нарисованный на все другие приложения в любое время, я бы предпочел использовать Xlib, чтобы сделать это, если это возможноокно всегда на вершине, используя 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; 
} 

Я хотел бы сделать это самым простым способом возможно благодаря

+0

Я думаю, что есть событие, которое вы можете поймать, когда часть окна станет недоступной. Когда вы это получите, вы всегда можете поставить свое окно спереди. Не то, чтобы я рекомендовал его, или имел всегда переднее окно, он нарушает работу многих людей. Я лично * ненавижу * окна, которые ставят себя перед окном, с которым мне нужно работать. –

ответ

1

Да, это возможно, и не сложно

#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 делает трюк, если оконный менеджер является кооперативным.

+1

Замечательный, просто замечательный не думал, что это будет так просто –

Смежные вопросы