日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

QColor的使用

發布時間:2024/1/18 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QColor的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??? QColor類提供基于RGB、HSV或CMYK值的顏色。顏色通常用RGB(紅色、綠色和藍色)組件指定,但也可以用HSV(色相、飽和度和值)和CMYK(青色、品紅、黃色和黑色)組件指定。此外,可以使用顏色名稱指定顏色。顏色名稱可以是SVG 1.0的任何顏色名稱。

??? QColor構造函數基于RGB值創建顏色。要基于HSV或CMYK值創建QColor,分別使用toHsv()和toCmyk()函數。這些函數使用所需的格式返回顏色的副本。此外,靜態fromRgb()、fromHsv()和fromCmyk()函數從指定的值創建顏色。或者,可以使用convertTo()函數(以所需格式返回顏色的副本)或任何更改顏色格式的setRgb()、setHsv()和setCmyk()函數將顏色轉換為三種格式中的任何一種。函數的作用是:指定顏色。

??? 可以通過將RGB字符串(如“#112233”)、ARGB字符串(如“#ff112233”)或顏色名稱(如“blue”)傳遞給setNamedColor()函數來設置顏色。顏色名稱取自SVG 1.0顏色名稱。函數的作用是:返回顏色的名稱。顏色也可以使用setRgb()、setHsv()和setCmyk()來設置。要獲得較淺或較深的顏色,分別使用較淺()和較深()函數。

通過顏色名稱設置的例子:(名稱必須是Predefined Colors里面的)

background_color = QColor() background_color.setNamedColor('blue')

?? 設置藍色還可以通過(括號里面的整數值啥意思,飽和度亮度?哪位能告知)

background_color = QColor() background_color.setBlue(100)

??? isValid()函數表示QColor是否合法。例如,RGB顏色的RGB值超出范圍是非法的。由于性能原因,QColor基本上不考慮非法顏色,因此,使用無效顏色的結果是無法定義的。

??? 顏色組件可以單獨檢索,例如。用紅色(),色調()和青色()。還可以使用getRgb()、getHsv()和getCmyk()函數一次性檢索顏色組件的值。使用RGB顏色模型,還可以使用RGB()訪問顏色組件。

??? 有幾個相關的非成員:QRgb是一個類型定義,用于表示RGB值三元組的無符號int (r, g, b)。qRed()、qBlue()和qGreen()函數返回給定的QRgb值的各個組件,而QRgb()和qRgba()函數根據給定的組件值創建并返回QRgb三元組。最后,qAlpha()函數返回提供的QRgb的alpha組件,qGray()函數根據給定的值計算并返回一個灰色值。

QColor是平臺和設備獨立的。QColormap類將顏色映射到硬件。

整數 vs浮點精度

??? QColor支持浮點精度,提供所有顏色組件函數的浮點版本,例如getRgbF()、hueF()和fromCmykF()。注意,由于組件是使用16位整數存儲的,因此使用setRgbF()和getRgbF()函數返回的值之間可能存在微小的偏差。

??? 雖然基于整數的函數取值范圍為0-255 (hue()除外,其值必須在0-359范圍內),但浮點函數接受范圍為0.0 - 1.0的值。

下面貼一個顯示藍底紅字的例子

import sysfrom PyQt5.QtCore import Qt from PyQt5.QtGui import QColor, QPalette from PyQt5.QtWidgets import QWidget, QApplication, QTextEdit, QMainWindow, QColorDialogclass Example1(QMainWindow):def __init__(self):super().__init__()self.init_ui()def init_ui(self):background_color = QColor()background_color.setNamedColor('blue')#self_color = QColorDialog.getColor()self.text_editor = QTextEdit()color_palette = self.text_editor.palette()color_palette.setColor(QPalette.Text, Qt.red)color_palette.setColor(QPalette.Base, background_color)#color_palette.setColor(QPalette.Base, self_color)self.text_editor.setPalette(color_palette)default_font = self.text_editor.font()default_font.setPointSize(9)self.text_editor.setFont(default_font)self.setWindowTitle('Example')self.setCentralWidget(self.text_editor)self.setGeometry(500, 500, 500, 500)self.show()if __name__ == '__main__':app = QApplication(sys.argv)example = Example1()sys.exit(app.exec_())

效果如下:

歡迎加入QQ群:853840665,一塊學習分享資料

總結

以上是生活随笔為你收集整理的QColor的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。