Registriert seit: 12. Dez 2004
Ort: Wien, Österriech
893 Beiträge
Delphi 6 Enterprise
|
Re: C++ Fenster unter Linux (Funktionsweise)
6. Jul 2007, 20:11
Zitat:
Genau, ein X-Server stellt nur Zugriffsmöglichkeiten auf Ein-/Ausgabe und Funktionen zum Zeichnen von graphischen Primitiven und Schrift zur Verfügung.
Nich nur.
Code:
The following program creates a window with a little black square in it.
/*
Simple Xlib application drawing a box in a window.
*/
#include<X11/Xlib.h>
#include<stdio.h>
#include<stdlib.h>
int main() {
Display *d;
int s;
Window w;
XEvent e;
/* open connection with the server */
d=XOpenDisplay(NULL);
if(d==NULL) {
printf("Cannot open display\n");
exit(1);
}
s=DefaultScreen(d);
/* create window */
w=XCreateSimpleWindow(d, RootWindow(d, s), 10, 10, 100, 100, 1,
BlackPixel(d, s), WhitePixel(d, s));
/* select kind of events we are interested in */
XSelectInput(d, w, ExposureMask | KeyPressMask);
/* map (show) the window */
XMapWindow(d, w);
/* event loop */
while(1) {
XNextEvent(d, &e);
/* draw or redraw the window */
if(e.type==Expose) {
XFillRectangle(d, w, DefaultGC(d, s), 20, 20, 10, 10);
}
/* exit on key press */
if(e.type==KeyPress)
break;
}
/* close connection to server */
XCloseDisplay(d);
return 0;
}
Xlib
Katura Haris Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
|
|
Zitat
|