【PyQt】QLabelのテキストカラー変更


環境

  • Windows 10
  • Python 3.7.3
  • PyQt5 5.13.1
  • Qt Designer 5.11.1

QLabelのサンプル作成

Qt Designerを使って、適当なラベルを配置した画面を作ります。
Designerを使った画面の作り方はこちらを参考。

hoge_label_ui.py
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'hoge_label.ui'
#
# Created by: PyQt5 UI code generator 5.13.1
#
# WARNING! All changes made in this file will be lost!


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(225, 123)
        self.hoge_label = QtWidgets.QLabel(Form)
        self.hoge_label.setGeometry(QtCore.QRect(30, 20, 181, 91))
        font = QtGui.QFont()
        font.setPointSize(64)
        self.hoge_label.setFont(font)
        self.hoge_label.setObjectName("hoge_label")

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.hoge_label.setText(_translate("Form", "hoge"))

label_sample.py
import sys

from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QMainWindow

from hoge_label_ui import Ui_Form


class LabelSample(QMainWindow, Ui_Form):
    def __init__(self, parent=None):
        super(LabelSample, self).__init__(parent)
        self.setupUi(self)


if __name__ == '__main__':
    argvs = sys.argv
    app = QApplication(argvs)
    label_sample = LabelSample()
    label_sample.show()
    sys.exit(app.exec_())

テキストの色を変える

self.hoge_label.setStyleSheet("QLabel { color : red; }")
を追加

label_sample.pyの一部
    def __init__(self, parent=None):
        super(LabelSample, self).__init__(parent)
        self.setupUi(self)
        self.hoge_label.setStyleSheet("QLabel { color : red; }")

色の指定は16進表記でもOK。
self.hoge_label.setStyleSheet("QLabel { color : #ff0000; }")

あるいはDesigner上のプロパティのstyleSheetを編集しても同じことができます。

参考URL