PyQt - 畫刷樣式常量



預定義 QColor 樣式

Qt.NoBrush 無畫刷圖案
Qt.SolidPattern 均勻顏色
Qt.Dense1Pattern 極密集的畫刷圖案
Qt.HorPattern 水平線
Qt.VerPattern 垂直線
Qt.CrossPattern 交叉水平和垂直線
Qt.BDiagPattern 向後對角線
Qt.FDiagPattern 向前對角線
Qt.DiagCrossPattern 交叉對角線

預定義 QColor 物件

Qt.white
Qt.black
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()

以上程式碼產生以下輸出 -

BrushStyle Constants Output
廣告

© . All rights reserved.