N個の列を持つQTableWidgetがあり、列数が設定されると、QTableWidget全体が自動的に入力されます。列数をN/2列に動的に変更しようとすると、各列のサイズは変更されません。これにより、QTableWidgetの右半分が空白になります。
逆に、列数を2 * Nにリセットすると、列幅が適切に調整され、QTableWidgetがいっぱいになります。
QTableWidgetに空白を付けずに、列と行の数をリセットするにはどうすればよいですか?
QHeaderView
のサイズ変更モードを設定してみましたか?
QTableWidget* myTable = new QTableWidet;
QHeaderView* header = myTable->horizontalHeader();
header->setResizeMode(QHeaderView::Stretch);
編集:指摘したように、Qt 5では:
QTableWidget* myTable = new QTableWidet;
QHeaderView* header = myTable->horizontalHeader();
header->setSectionResizeMode(QHeaderView::Stretch);