mario::konrad
programming / C++ / sailing / nerd stuff
OpenGL: Tutorial 5 - Fullscreen
© 2004 / Mario Konrad

Beschreibung

Wechsel zwischen Fullscreen-Modus und Fenster-Modus mit GLUT.

Platformen:

Download

Die auf dieser Seite aufgeführten Sourcecodes dürfen uneingeschränkt verwendet, kopiert, verändert und publiziert werden. Jegliche Haftung wird abgelehnt, die Verwendung des hier publizierten Materials geschieht auf eigenes Risiko.

Source: tutorial05.cpp

Paket: tutorial05.tgz

Build und Start

$ tar -xzf tutorial05.tgz
$ cd tutorial05
$ make
$ ./tutorial05

Das Programm

Wer die vorangegangenen Tutorials gelesen hat, findet hier nicht viel Neues. Deshalb wird an dieser Stelle auch nur auf das Wesentliche eingegangen.

Den Zustand der Darstellung merken wir uns in einer Variablen fullscreen. Per Default sind wir im Fenster-Modus:

int fullscreen = 0;

In der Funktion keyboard geschieht das wichtigste. Sobald die Taste f betätigt wird, schaltet das Demo zwischen den beiden Modi hin und her.

void keyboard(unsigned char key, int x, int y)
{
    switch (key)
    {
        case 'f':
            if (fullscreen)
            {
                glutReshapeWindow(800, 600);
                glutPositionWindow(0, 0);
            }
            else glutFullScreen();
            fullscreen = !fullscreen;
            break;
        case 27: exit(0);
    }
}

Um in den Fullscreen-Modus zu schalten wird die Funktion glutFullScreen() aufgerufen (Zeile 20). Um wieder in den Fenster-Modus zu schalten, muss nur die Grösse des Fensters gesetzt werden. Optional kann auch die Position bestimmt werden.