見出し画像

PySide2 の QTableWidget でカラムサイズを調整する

数年前に PySide をさわった時には、Qt5 に対応していなかった事と Python より C++ の方が慣れていた事もあり、すぐに Qt にシフトしてしまいました。その後、ここ数年は Web アプリに取り組んでいましたが、再び Python で色々ツールを作ってみようとごそごそやっています。

最近は、 PySide2 が Qt for Python のブランド名を得て盛り上がりつつあるようですが、まだまだ情報が少なく、試行錯誤が必要です。ただでさえ、もうすっかり Qt の考え方とか忘れてしまっているのでリハビリが大変・・・。

と、前置きはこのくらいにして、今後は色々やってみて分かった事をこまめにアップしていきます。

本日は、QTableWidget のお話です。

[やりたい事]

Qt Designer で UI デザインをする際に QTableWidget を配置すると、デフォルトでは列幅が 100 に設定されている。これをデザイン段階で調整したい。

[結論]

列幅を調整するには、プロパティエディタの Header にある horizontalHeaderDefaultSectionSize を調整する。

上記で各カラムの幅が 400 になります。

ただし、この方法はカラム毎にサイズを調整するわけではないので、カラム毎の調整はコードで行う必要があります。ただ、現状ではその方法までは調べきれていません。

(QTableWidget オブジェクトから horizontalHeaderItem(column) で QTableWidgetItem オブジェクトを取得して setSizeHint(QSize(w,h)) を実行してみましたが、w を調整してもサイズは変更できませんでした。)

また何か判明したら追記します。

いいなと思ったら応援しよう!

Junf / Jade
Note やるからには、サポートがいただけるような役立つ記事を書きたいものです。サポートは資料購入に宛てます。