Ergebnis 1 bis 5 von 5

Thema: [Ubuntu][C++] Feste Fenstergröße

  1. #1

    [Ubuntu][C++] Feste Fenstergröße

    Ich hab mir vor kurzem ein kleines Hilfsprogramm geschrieben und dafür auch ein User-Interface in OpenGL (bzw. mit glut) gebastelt. Läuft auch alles soweit, allerdings gibt es da noch ein Problem, bei dem Google bisher nicht sehr hilfreich war:

    Ich will, dass das angezeigte Fenster eine feste Größe hat (sprich: weder maximierbare, noch per Maus änderbare Fenstergröße). Leider bietet glut keinerlei entsprechende Funktionen und direkt für X-Window hab ich bisher auch nichts gefunden.

    Kennt zufällig jemand von euch eine Lösung, oder eine Seite, auf der das auf jeden Fall irgendwo erklärt ist?

  2. #2
    Eine ganz stumpfe Idee wäre jetzt, im glutReshapeFunc Callback wieder glutReshapeWindow aufzurufen, um das Reshape rückgängig zu machen:

    Code (C++):
    const int WIDTH = 640;
    const int height = 480;
     
    void OnReshape(int w, int h)
    {
        if(w != WIDTH || h != HEIGHT)
            glutReshapeWindow(WIDTH, HEIGHT);
    }
     
    int main(int argc, char** argv)
    {
        // ...
        glutCreateWindow("Mein Fenster");
        glutReshapeWindow(WIDTH, HEIGHT);
        glutReshapeFunc(OnReshape);
        // ...
    }


    Hab das jetzt nicht getestet, sollte aber gehen.

  3. #3
    Ein wenig unorthodox aber es macht irgendwie einen Teil davon, was ich haben wollte. Evtl. versuch ichs doch noch irgendwann mal mit was anderem. Was noch fehlt ist die Deaktivierung des Maximieren-Icons.

    Danke jedenfalls!

  4. #4
    So, wie ich es vernommen habe, gibt es mit GLUT keine vernünftige Lösung für das Problem.
    Man kann mit GLUT nicht einstellen, dass das Fenster eine feste Größe haben soll.
    Die Lösung von DFYX scheint mir da die einzige annehmbare Lösung zu sein.

  5. #5
    Eine elegante und plattformunabhängige Lösung wäre, mit Qt, Gtk oder wxWidgets ein Fenster aufzumachen und da reinzurendern. Zumindest mit wx geht das recht einfach. Dann kann man auch direkt deren Inputmethoden mitverwenden.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •