QTablWidget と QTextEdit があるとします。どちらも水平 QSplitte にあります。QTable ウィジェットに 2 つの列があるとします。
問題は、マウスでスプリッターを動かしてサイズ変更操作を行うときに、テーブルの列の幅を変更することです。テーブルと同期してサイズを変更する列のオプションはありますか?
ありがとう。
QTablWidget と QTextEdit があるとします。どちらも水平 QSplitte にあります。QTable ウィジェットに 2 つの列があるとします。
問題は、マウスでスプリッターを動かしてサイズ変更操作を行うときに、テーブルの列の幅を変更することです。テーブルと同期してサイズを変更する列のオプションはありますか?
ありがとう。
QHeaderView *header = ui->tableWidget->horizontalHeader();
header->setResizeMode(QHeaderView::Stretch);
このコードは、ui->tableWidget のすべての列を同じ幅に設定し、自動的に変更します。また、ドキュメントの QHeaderView の説明を見てください。この API を使用すると、テーブルの列で想像できることはほとんど何でもできます。
悲しいことに、リレーショナル列の幅を等しくしない必要がある場合は、ストレッチ ファクターやスマートを設定することはできませんが、ヘッダーの geometriesChanged が発生したときに sizeHint() を再実装したり、セクションのサイズを変更したりすることはできます。