PyQt - BrushStyle 常量


预定义的 QColor 样式

Qt.NoBrush 无画笔图案
Qt.SolidPattern 颜色均匀
Qt.Dense1Pattern 极其密集的笔刷图案
Qt.HorPattern 水平线
Qt.VerPattern 垂直线
Qt.CrossPattern 跨越水平线和垂直线
Qt.BDiagPattern 向后对角线
Qt.FDiagPattern 向前对角线
Qt.DiagCrossPattern 穿过对角线

预定义的 QColor 对象

怀特Qt
Qt.black
红Qt
Qt.深红
Qt绿色
Qt.深绿
Qt.蓝
青色Qt
洋红Qt
黄Qt
Qt.暗黄
Qt.格雷

可以通过指定 RGB 或 CMYK 或 HSV 值来选择自定义颜色。

例子

以下示例实现了其中一些方法。

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()

上面的代码产生以下输出 -

BrushStyle 常量输出