Seite 1 von 1

QTableView optimale Breite

Verfasst: 19. Juni 2007 16:09
von dust2
Hallo

ich habe einen Qt4-Dialog mit einem QTableView zusammen mit ein paar Buttons in einem automatischen Layout:

[code]// Layouts
QVBoxLayout *mainlayout=new QVBoxLayout(this);
QHBoxLayout *tablelayout=new QHBoxLayout(this);
QHBoxLayout *buttonlayout=new QHBoxLayout();


// create tableview
QTableView * tableview=new QTableView() ;
tableview->setSizePolicy(QSizePolicy::MinimumExpanding,QSizePolicy::MinimumExpanding);
QSqlTableModel *model = new QSqlTableModel();
//create sqltablemodel
model->select();

tableview->resizeColumnsToContents();

// add table to tablelayout
tablelayout->addWidget(tableview,2);
// ad layouts to mainlayout
mainlayout->addStretch();
mainlayout->addLayout(tablelayout);
mainlayout->addStretch();
mainlayout->addLayout(buttonlayout);[/code]

Wird auch alles schön angeordnet, aber die Tabelle ist immer in der Breite zu klein. Ich kann die Breite der Tabell zwar mit setgeometry() oder setsizeHint() setzen,
aber die Tabelle soll sich
1. in Breitenrichtung auf die Breite des Models(Breite nach resizeColumns) anpassen
2. der Dialog soll sich dann außenrum an die Breite der Tabelle anpassen

Ich habe mit Stretchfaktoren und setSizepolicy und mit:

tableview->resizeColumnsToContents();
tableview->setMinimumWidth(this->width ());

experimentiert, alles ohne Erfolg. Ich bräuchte zuerstmal die Breite der Tabelle nach dem ResizeColumns, width() ist danach größer(breiter) warum?

Danke für eure Hilfe....

Daniel
[/code]