PyQt - BrushStyle常量

预定义的QColor样式

Qt .NoBrush没有画笔模式
Qt.SolidPattern统一颜色
Qt.Dense1Pattern非常密集画笔
Qt.HorPattern水平线
Qt.VerPattern垂直线
Qt.CrossPattern越过水平和垂直线
Qt.BDiagPattern向后对角线
Qt.FDiagPattern前向对角线
Qt.DiagCrossPattern交叉对角线

预定义的QColor对象

Qt.white
Qt.黑色
Qt.red
Qt.darkRed
Qt.green
Qt.darkGreen
Qt.blue
Qt.cyan
Qt.magenta
Qt.yellow
Qt.darkYellow
Qt.gray

可以通过指定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()

以上代码生成了followi ng输出 :

BrushStyle常量输出