PyQt - Hằng số BrushStyle
Kiểu màu QC được xác định trước
Qt.NoBrush | Không có mẫu bàn chải |
Qt.SolidPattern | Màu đồng nhất |
Qt.Dense1Pattern | Mẫu cọ cực kỳ dày đặc |
Qt.HorPattern | Đường ngang |
Qt.VerPattern | Đường thẳng đứng |
Qt.CrossPattern | Giao nhau giữa các đường ngang và dọc |
Qt.BDiagPattern | Các đường chéo ngược |
Qt.FDiagPattern | Chuyển tiếp các đường chéo |
Qt.DiagCrossPattern | Giao nhau các đường chéo |
Đối tượng màu QC được xác định trước
Qt.white |
Qt.black |
Qt.red |
Qt.darkRed |
Qt.green |
Qt.darkGreen |
Qt.blue |
Qt.cyan |
Qt.magenta |
Qt.yellow |
Qt.darkYellow |
Qt.gray |
Màu tùy chỉnh có thể được chọn bằng cách chỉ định các giá trị RGB hoặc CMYK hoặc HSV.
Thí dụ
Ví dụ sau đây thực hiện một số phương pháp này.
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
class Example(QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
self.text = "hello world"
self.setGeometry(100,100, 400,300)
self.setWindowTitle('Draw Demo')
self.show()
def paintEvent(self, event):
qp = QPainter()
qp.begin(self)
qp.setPen(QColor(Qt.red))
qp.setFont(QFont('Arial', 20))
qp.drawText(10,50, "hello Pyth
on")
qp.setPen(QColor(Qt.blue))
qp.drawLine(10,100,100,100)
qp.drawRect(10,150,150,100)
qp.setPen(QColor(Qt.yellow))
qp.drawEllipse(100,50,100,50)
qp.drawPixmap(220,10,QPixmap("python.jpg"))
qp.fillRect(200,175,150,100,QBrush(Qt.SolidPattern))
qp.end()
def main():
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Đoạn mã trên tạo ra kết quả sau: