Anzeige:
Ergebnis 1 bis 4 von 4

Thema: QGLWidget mit weiteren Elementen benutzten

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    26.12.2001
    Ort
    Pulheim
    Beiträge
    28

    QGLWidget mit weiteren Elementen benutzten

    hi,

    ich habe folgendes Problem. Ich habe eine Klasse QGLViewerWidget die abgeleitet ist von QGLWidget. Hier habe ich meinen ganzen OpenGLkram reingepackt. So nun habe ich aber noch eine andere Klasse MeshViewerWidget die ein Kind von QGLViewerWidget ist. In MeshViewerWidget habe ich dann die Menüs erstellt die ich haben will was auch alles geklappt hat. Nur, jetzt wollte ich noch ein paar andere Widgets in mein Fenster packen z.B. ein label und spinboxen. Wie mache ich das? Wenn ich einfach nen QHBoxLayout benutzte und dort die anderen Sachen reinpacke bekomme ich nur mist auf mein fenster. Da ist dann nicht eine schöne Zeile in der Alles drin ist sondern die Objecte liegen auf meinem OpenGLteil des Fensters. Was mache ich falsch? Bis dann
    AnubisTheKing

  2. #2
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    719
    Verstehe ich dich richtig? Du hast IN ein QGLWidget andere QWidgets, wie etwa Buttons, Spinboxes u.Ä. gepackt? Das kann nicht gut gehen.

  3. #3
    Registrierter Benutzer
    Registriert seit
    26.12.2001
    Ort
    Pulheim
    Beiträge
    28
    warum kann das nicht gut gehen? das menü da rein zu packen ging doch auch ohne Probleme. Dann muss ich wohl noch eine anderes Widget davor setzten damit es klappt.

  4. #4
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    719
    Weil ein QGLWidget einen OpenGL-Context erzeugt, in dem die Grafikkarte dann relativ direkt malen kann. Es ist auch üblich, den Befehl zu geben, das QGLWidget so oft wie möglich neu zu zeichnen. Das gibt dann Ärger mit dem anderen Grafiksystem (X Window), weil erst der Inhalt des OpenGL-Widgets gezeichnet wird und die Controll innen drinn ja noch informiert werden müssen, das sie "übermalt" wurden. Du wirst wenigstens ein starkes Flickern bemerken. Man bettet üblicherweise das QGLWidget in ein größeres Widget und ordnet andere Widgets außen rum an.

Lesezeichen

Berechtigungen

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