2

如何创建一个有 2 列的 QTable 小部件,在第一列有一个 QComboBox,在第二列有一个 QSpinBox,以便组合框获得表的所有空间,只有一个很小的地方留给 QSpinBox(对于2-3 位数)。

4

1 回答 1

5

首先,使用setCellWidget()QComboBox和设置QSpinBox为要在相应单元格中显示的小部件。

其次,使用horizontalHeader()访问QHeaderViewQTableView然后ResizeMode相应地设置 。

QTableWidget* table = new QTableWidget( this );
table->setColumnCount( 2 );
table->setRowCount( 1 );
table->setCellWidget ( 0, 0, new QComboBox( table ) );
table->setCellWidget ( 0, 1, new QSpinBox( table ) );
table->horizontalHeader()->setResizeMode( 0, QHeaderView::Stretch );
table->horizontalHeader()->setResizeMode( 1, QHeaderView::ResizeToContents );
于 2010-07-03T19:31:18.770 回答