QDialog Größe an Größe eines TableViews anpassen.

Alles rund um die Programmierung mit Qt
Antworten
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

QDialog Größe an Größe eines TableViews anpassen.

Beitrag von BartSimpson »

Hallo, ich habe ein QDialog, welche u.a. auch ein TableView enthält.
Wenn ich dem TV das Modell übergeben, werde die Rollbalkeb angezeigt, wenn die Tablle zu gross ist. Jetzt würde ich es aber gerne so haben, das denn der QDialog größer wird. Aber irgenwie bekommen ich nicht die größe raus, die der Dialig haben müsste, um alles ohne Balken anzeigen zu können.
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

QMainWindow => showMaximized();
oder dialog tabelle setMinimumSize(QSize(500, 524));

geht auf jedem fall in designer ui file....
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

So einfach geht das leider nicht!
Denn dann sieht das TableView extrem schei... aus.
Denn es darf nicht gößer sein als nötig.
Also muss man irgenwie rausbekommen wie viel Platz es genau benötigen würde. Und um diesen Faktor denn den Dialog vergrößern. Das ganze natürlich unter Berücksichtiugung der maximalen Bildschimbreite.(Aber das ist ja nicht das Problem). Da ja leider die Schrittweite des Balkens nicht die größe in Pixeln entspricht:(
Esleborn
Beiträge: 265
Registriert: 27. Januar 2005 01:23
Wohnort: Baden-Würtenberg
Kontaktdaten:

Beitrag von Esleborn »

mmh nciht getestet, aber di eGörße bekommst du glaub ich über

Code: Alles auswählen

p_table->viewport ( )->size ( );
Glaube an eine Lösung, nur dann kannst du auch eine finden.
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

nee leider nicht. Denn der Viewport ist nur der gerade gezeigte Ausschnitt:(
Esleborn
Beiträge: 265
Registriert: 27. Januar 2005 01:23
Wohnort: Baden-Würtenberg
Kontaktdaten:

Beitrag von Esleborn »

sry klar...

maximumViewportSize ( ) ?
Glaube an eine Lösung, nur dann kannst du auch eine finden.
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

nee das ist die Größe die für den Aktuellen Bereich abzüglich der eventuellen Laufbalken bleibt:(
Aber leider nicht die Größe des ganzen:(
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

Also die breite finden sollte theoretisch gehen... mit

int QTableView::columnViewportPosition ( int column ) const
Returns the x-coordinate in contents coordinates of the given column.

die differenz der erste und letzte hast du die summe...
wenn alles zu breit ist ... kann das item noch resize to contenent .. dann kommt der minimale platz halter....
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Das ist gar nicht mal so doof:)
nach ein parr versuchen muss die Formel heissen:
columnViewportPosition(letzteSpalte)+...->columnWidth(letzteSpalte)
Antworten