Qt: Ränder der QGroupBox werden nicht angezeigt



  • Ok, danke schonmal für die Hilfe.

    Ich muss gestehen, das ich mit dem Link nicht wirklich viel anfangen kann, dafür kenn ich Qt zu schlecht.

    Nebenbei, ich nutze den Qt-Creator mit Qt 5.2 und habe mich an das Online-Beispiel für die Groupbox gehalten (http://doc.qt.io/qt-5/qtwidgets-widgets-groupbox-example.html).

    Normalerweise mag ich keine fertigen Lösungen alla "Das funktioniert nicht, macht mir das!!" weil ich mir das Wissen lieber selbst erarbeite, aber hierbei würde ich ein kleines Code-Beispiel doch begrüßen 🙂

    Viele Grüße
    Cherup



  • Ok, screenshot wäre sinnvoll, kann ich den hier direkt in einen Post einfügen?

    Edit:
    Hier ist der Screenshot:

    http://img5.fotos-hochladen.net/uploads/screenshottest9cyljxou5q.png



  • Ruf mal groupBox->setFlat(false); auf und sag obs klappt.



  • Nein, das klappt nicht, hatte auch schon die Vermutung.
    Habs aber trotzdem nochmal probiert, wieder das gleiche...



  • Probiers mal mit dem preview feature des Qt designers.
    Dort ein simples widget erstellen mit einer group box.
    Und dann unter Form->"Preview in"->"Windows Style"
    Dort sollte dann ein rahmen auftauchen.
    Denn es kann gut sein, dass Gnome/Ubuntu nen qt style global aktiv hat, welcher den rahmen der group box entfernt.
    Wenn das klappt dann mach nur ein preview im designer (der verwendet dann den style welches im system gesetzt wurde)



  • Klappt leider auch nicht, der Rahmen wird da auch nicht angezeigt 🙄
    Bin eh kein Freund von GUI-Buildern, das sieht in 99,9% der Fälle immer wie hingeklickt aus..

    Ich glaub ich installiere Qt mal neu, vllt bringts was...

    Edit:

    Es hat doch geklappt, hatte das "Preview in" Übersehen...

    Soweit so gut, kann ich das global einstellen ohne mit dem Gui-Builder arbeiten zu müssen? ich mag das wirklich nicht sehr 🙄



  • Das mit dem qt designer war nur ein test um festzustellen ob es ein Qt bug an sich ist oder nur ein style "Problem". Du must da gar nichts mit dem Qt designer machen...

    Und anscheinend ist das so vom style, welcher systemweit für Qt gesetzt wurde, gewollt. Kann es sein das du Ubuntu mit Unity verwendest?
    Eventuell lässt sich dort ein anderer style einstellen.
    Man könnte auch mit einem custom style sheet am control/toplevel widget den rahmen wieder anzeigen.

    Aber generell würde ich sagen mach dir deswegen keinen Kopf wenn das verwendete Qt Style keine Rahmen für Groupboxes haben möchte, dann sollte wenn möglich das Programm nicht dagegen Arbeiten.
    Denn durch solche "globalen" styles fügen sich alle Qt Programme in den Style des Systems ein.



  • Mit Unity hast du recht, ich muss diese Krankheit leider benutzen (wenn auch nur, weil ich zu faul bin auf ne andere Distri umzusteigen 😉 )

    Also bedeutet das, das ich mir quasi einen Rahmen per Hand zeichnen muss?



  • Hmmm gibts denn eine andere Möglichkeit einen Rahmen oder eine Trennlinie zu erzeugen?
    Eine möglichst einfache und unaufwendige? 🙄



  • Guten Morgen,

    Ich habe das jetzt mit einer QFrame-Linie als Trennlinie gelöst und es läuft.

    Der Code dazu ist mit

    QFrame *Line = new QFrame;
    Line->setFrameShape(QFrame::HLine);
    Line->setFrameShadow(QFrame::Sunken);
    

    zum Glück recht simpel.

    Danke für eure Hilfe und vielleicht bis zum nächsten Mal 😉

    Ach ja, mit welchem Flag soll ich das Thema hier markieren? [Gelöst] trifft es ja nicht ganz, oder?

    Viele Grüße
    Cherup


Anmelden zum Antworten