Python | PyQt QLineEditのマウスオーバー(ホバー)時の文字色/背景色の設定方法

GUI App

Python PyQt QLineEditのマウスオーバー(ホバー)時の文字色/背景色の設定方法を説明する。

結論

文字列型の変数にCSS形式で文字列/背景色を記述し、.setStyleSheet(スタイルを書いた変数)で設定する。

具体例

  1. 変数styleにQLineEditと記述する。
  2. ホバー時の文字色を記述する。
  3. ホバー時の背景色を記述する。
  4. .setStyleSheet(スタイルを書いた変数)でスタイルを設定する。
#!/usr/bin/env python3

import sys
from PyQt6.QtWidgets import QApplication, QWidget, QLineEdit


class GuiWindow(QWidget):

    def __init__(self, parent=None):
        super().__init__(parent)
        self.build_ui()

    def build_ui(self):
        self.ラベル = QLabel('私はヨシヒコだ', self)
        self.ラベル.setGeometry(20, 30, 200, 20)
        style = ('QLineEdit{'
                'color: white;'
                'background-color: rgba(0,0,255,1);'
                '}'
                'QLineEdit::hover{'                       # 1 QWidgetsの種類
                'color: white;'                           # 2 ホバー時の文字色
                'background-color: rgba(55,211,144,1);'   # 3 ホバー時の背景色
                '}')
        self.ラベル.setStyleSheet(style)                   # 4 スタイルを設定


if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = GuiWindow()
    window.show()
    sys.exit(app.exec())

例題

これを作成しろ。

まとめ

Python PyQt QLineEditのマウスオーバー(ホバー)時の文字色/背景色の設定方法を説明した。

コメント