PySide (Qt for Python) は、Qt(キュート)の Python バインディングで、GUI などを構築するためのクロスプラットフォームなライブラリです。Linux/X11, macOS および Microsoft Windows をサポートしています。配布ライセンスは LGPL で公開されています。
今回のテーマ
- GUI のウィンドウサイズを固定します。
下記の OS 環境で動作確認をしています。
Fedora Workstation 39 | x86_64 | |
Python | 3.12.2 | |
PySide6 | 6.6.2 |
PySide6 で、ウィンドウのサイズを固定するには次のようにします。
self.setFixedSize(600, 400)
これで、ウィンドウのサイズは 600 x 400 に固定され、変更できなくなります。
ひとつ問題があります。作成した GUI のウィンドウの最小サイズをどのように入手するのか、ということです。そんなとき、下記のように sizeHint メソッドを利用すれば簡単に解決できます。
self.setFixedSize(self.sizeHint())
サンプルを以下に示します。
qt_gridlayout_top_left_resize.py
qt_gridlayout_top_left_resize.py の実行例
なぜこのような簡単なテーマを備忘録にするのかというと、それは、自分が長い間 Tcl/Tk で GUI アプリを作っていたからです。Tk では、ウィンドウのサイズ変更を wm コマンドで制御しているため [1]、そのやり方にとらわれてしまって PySide6 ではどうするのか、かなり長い間解らなかったからです。
wm resizable window ?width height?
結局、自分のための備忘録なのです。🙇🏻
参考サイト
- wm resizable [Tcl/Tk manual]
にほんブログ村
#オープンソース
0 件のコメント:
コメントを投稿