#include <X11/Xlib.h>#include <glib.h>#include <stdio.h>#include <stdlib.h>#include <unistd.h> #include <cstring> using namespace std; Display* dsp = 0;Window window = 0; int main( int, char** argv){ char *display_name = getenv("DISPLAY"); dsp = XOpenDisplay(display_name); if (dsp == NULL) { fprintf(stderr, "%s: can't connect to Х server '%s'\n", argv[0], display_name); exit(1); } window = XDefaultRootWindow( dsp ); int scr_number = DefaultScreen(dsp); GC gc = XDefaultGC(dsp,scr_number); XSetForeground( dsp, gc, 0xffffff); XSetBackground( dsp, gc, 0 ); int display_width = DisplayWidth(dsp, scr_number); int display_height = DisplayHeight(dsp, scr_number); Font font = XLoadFont( dsp, "-*-fixed-medium-*-normal-100-*-*-*-*-*-koi8-u " ); XSetFont( dsp, gc, font ); const char* msg = "Hello there!!!!"; XDrawString( dsp, window, gc, 130, 130, msg, strlen( msg ) ); XFlush(dsp); XUnloadFont( dsp, font ); XFreeGC( dsp, gc );sleep(2000); }
Якщо на Qt це не можливо то підкажіть будь-ласка що я не так написав в xlib:...буду дуже вдячний за допомогу.
#include <X11/Xlib.h>#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>Display *display = 0;Window window = 0;intmain (int argc, char **argv){ char *display_name = getenv ("DISPLAY"); display = XOpenDisplay (display_name); if (display == NULL) { fprintf (stderr, "%s: can't connect to Х server '%s'\n", argv[0], display_name); exit (1); } window = XDefaultRootWindow (display); int scr_number = DefaultScreen (display); GC gc = XDefaultGC (display, scr_number); XSetForeground (display, gc, 0xff00ff); XSetBackground (display, gc, 0); int display_width = DisplayWidth (display, scr_number); int display_height = DisplayHeight (display, scr_number); Font font = XLoadFont (display, "-*-fixed-medium-*-normal-100-*-*-*-*-*-koi8-u "); XSetFont (display, gc, font); const char *msg = "Hello there!!!!"; XDrawString (display, window, gc, 130, 130, msg, strlen (msg)); XFlush (display); XUnloadFont (display, font); XFreeGC (display, gc); return 0;}
У мене стільниця не перекривається ніякими менеджерами (такими як nautilus чи KDE) - у мене взагалі іконок на стільниці нема, тому ніщо не заважає мені малювати по стільниці.