Die minimale Höhe eines Widgets ermittlen?

Alles rund um die Programmierung mit Qt
Antworten
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Die minimale Höhe eines Widgets ermittlen?

Beitrag von gast23 »

Hi,

Wie kann ich die minimale Höhe eines Widgets ermittlen?

wenn setMinHeight nicht gesetzt wurde erhalte ich 0.

sizeHint liefert einen Wert der mir unrealistisch erscheint...

Viele Dank
guenter.w
Beiträge: 8
Registriert: 29. Juni 2009 18:42

Beitrag von guenter.w »

Hy, wenn du den Standardwert "0" nicht überschreibst, wirst du auch nur "0" herausbekommen

LG
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Beitrag von gast23 »

a aber wie komme ich an die aktuellen Werte ran?

Wie ermittle ich den mindest space?
guenter.w
Beiträge: 8
Registriert: 29. Juni 2009 18:42

Beitrag von guenter.w »

Hm, ich bin mir grade nicht sicher ob ich dich richtig verstehe.
Aber der tatsächliche mindestwert ist 0. D.h. du kannst zur Laufzeit das Widget auf null minimieren.

Vlt. erklärst du mir einfach kurz worum es genau geht, vlt fällt dann der Groschen ;-)

edit:

also ehm nur damit wir nicht aneinander vorbeireden: du meinst nicht die ist-größe, oder? also .height() und .width() bzw. über .geometry() !?
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Beitrag von gast23 »

Also da es scheinbar keine Expander in Qt gibt:

Siehe hier:
http://qtforum.de/forum/viewtopic.php?p=61936#61936

würde ich gerne einen schreiben :)

Dazu möchte ich aktuelle Größe des Kindelements (Welches ein und ausgblendet wird) ermittlen.

Ich brauch die aktuelle Größe bzw. die minimal Größe des Kindes.

Wenn der Expandern auf geklappt ist ist die Größe Expanderheader + Kind.

Wenn zugeklappt dann ist die Größe nur Expanderheader.

Viele Grüße
padreigh
Beiträge: 340
Registriert: 13. Mai 2010 10:06

Beitrag von padreigh »

Bin mir nicht sicher was ein Expander ist .... sowas?
http://doc.trolltech.com/4.6/qspaceritem.html#details
Patrick (QtCreator 1.3.1, Qt 4.6.3)
---
template = subdirs
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Beitrag von gast23 »

Mr.Blonde
Beiträge: 10
Registriert: 29. Juli 2010 12:14

Beitrag von Mr.Blonde »

Vielleicht geht es mit sizeHint()? Das wird jedenfalls verwendet wenn adjustSize() aufgerufen wird und gibt die benötigte Größe zurück meine ich.
padreigh
Beiträge: 340
Registriert: 13. Mai 2010 10:06

Beitrag von padreigh »

was gibt es da groß zu schreiben?

Code: Alles auswählen

QWidget mit
  QVBoxLayout
      QHBoxLayout
           QToolButton, QLabel
      QWidget mit QVBoxLayout 
           alle child widgets
           alle child widgets
           alle child widgets
           alle child widgets
Den QToolButton mit (setToggleButton(true)) mit Icon versehen, das je togglestatus das QImage um 180° dreht. Connecte den QToolButton - Staus mit dem QWidget hide() show() und feddich ...

oder verpass ich da was?
Zuletzt geändert von padreigh am 2. September 2010 20:54, insgesamt 1-mal geändert.
Patrick (QtCreator 1.3.1, Qt 4.6.3)
---
template = subdirs
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Beitrag von gast23 »

Sowas habe ich geschrieben... jedoch wenn du mehrere Expander in einem VLayout hast verrutscht alles...

Deswegen wollte ich es richtig berechnen...
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Beitrag von gast23 »

Die Alternative ist ein Expander der das Icon und den Text beinhaltet + die Logik. Wenn man auf Ihn klickt wird das entsprechende signal verschickt z.B. expanded oder collapsed. Dieses signal wird mit einem slot show oder hide mit einem anderen Widget verbunden.

Wenn dann noch alle Widgets in einem VBLayout liegen hat man einen funktionsfähigen Expander :)

Viele Grüße
Antworten