Python 3 – PyQtスタイルを変更するにはどうすればよいですか?

Pyqtウィンドウスタイルを設定できます。

PyQtのデフォルトスタイルは「Fusion」と呼ばれます。 しかし、これだけがスタイルではありません。「QtCurve」、「Windows」など、多くのスタイルやテーマがあります。

アプリを複数のオペレーティングシステムに配布し、ネイティブのルックアンドフィールを使用することをお勧めします。 そのためには、テーマを変更します。

Windowsを使用している場合は、Windowsの外観が必要です。 Macでは、Mac OSXスタイルが必要です。 これらはすべて構成できます。 MacスタイルはMacOSXでのみ使用できます。

関連コース: PythonPyQt5でGUIアプリを作成する

PyQtスタイル

利用可能なスタイル

利用可能なPyQtスタイルはシステムごとに異なる場合がありますが、多くの人がPyQtバイナリをインストールするため、インストールされるスタイルは同じであることがよくあります。 次のように、Pythonインタープリターを使用して使用可能なスタイルのリストを取得できます。

1
2
3
4
5
6
7
$ python3
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt5.QtWidgets
>>> print(PyQt5.QtWidgets.QStyleFactory.keys())
['Breeze', 'Oxygen', 'QtCurve', 'Windows', 'Fusion']

ブリーズスタイルは次のようになります。

pyqtそよ風スタイル

スタイルを構成する

でアプリケーションを作成した後 QApplication([])、関数でQtスタイルを設定できます setStyle(style)。 たとえば、スタイルをFusionに設定する場合は、行を追加します app.setStyle('Fusion')

以下の例では、Windowsスタイルを次のように設定します。

1
2
app = QApplication([])
app.setStyle('Windows')

次に、ウィンドウは次のように表示されます(古いWin 9xスタイル):

pyqtウィンドウスタイル

Python PyQtを初めて使用する場合は、 それなら私はこの本を強くお勧めします。

例をダウンロード

Hope this helps!

Source link