Seite 1 von 1

Initiale Größe von DockAreas

Verfasst: 7. November 2009 15:26
von N¤X
Hi,
ich habe ein QMainWindow mit einem QDockWidget in der linken DockArea. Dieses DockWidget soll eigentlich schön schmal sein, nimmt aber automatisch ein Drittel meines ganzen MainWindows ein, was äußerst unästhetisch ist. Wenn ich das DockWidget ausdocke, die Größe ändere und es wieder eindocke nimmt es wieder diese breite Größe an, also scheint das Problem die Größe der DockArea zu sein.
OK, man kann die DockArea manuell kleiner ziehen, aber die anfängliche Größe muss man doch auch irgendwie schon im Code einstellen können, damit die Area vom Programmstart an die gewünschte Größe hat, oder nicht?
Ich habe dazu leider nichts in der Doku gefunden, und Google findet mir auch nur Leute die das selbe Problem haben, aber keine Lösung :/

Verfasst: 11. November 2009 12:00
von Neuling_
QDockWidget.setFixedWidth(int); ?

Verfasst: 12. November 2009 10:43
von N¤X
Naja, das wäre dann wohl die Holzhammer Methode.
Ich will halt eigentlich schon, dass mein DockWidget ne variable Breite hat, aber danke dass wenigstens mal einer was schreibt ^^

Verfasst: 13. November 2009 08:34
von Neuling_
Heyho,

ja, so wie es aussieht ist hier zurzeit ziemlich wenig los :/

kannst ja diese zwei Funktionen benutzten:

DockWidget->setMaximumWidth(int maxw);
DockWidget->setMinimumWidth(int minw);

Verfasst: 13. November 2009 08:45
von AuE
hol dir die breite, berechne dir 10% und setz die neue breite!

Verfasst: 13. November 2009 16:29
von N¤X
Wow, gleich zwei Tipps ^^
Also die maximumWidth auf die gewünschte Breite setzen tut ja schon, aber dann ist halt auch wieder das Problem, dass der User es nicht mehr verbreitern kann :/
Und die Breite von nem gedockten DockWidget setzen (mit resize(...)) geht nicht, solange es gedockt ist nimmts einfach nix dergleichen an sondern richtet sich an die Größenangaben der DockArea. Da die aber kein Objekt ist kann ich der auch keine Breite zuweisen Oo
Ich hab jetzt auch mal versucht die sizeHint() Funktion vom Widget im DockWidget zu überladen so dass die die minimumSize zurück gibt, aber das hat auch keine Auswirkungen -_-