qss設定平面按鈕 QSS基礎 設定控制項樣式

2021-10-18 16:08:23 字數 2404 閱讀 8437

1、qss基礎-設定同類控制項樣式

qss基礎:qt style sheet

qt樣式表

用於設定控制項的樣式和風格(比如控制項的背景色,字型顏色,字型大小等)

和css的功能比較相似,功能相似

from pyqt5.qtcore import *

from pyqt5.qtgui import *

from pyqt5.qtwidgets import *

import sys

class basicqss(qwidget):

def __init__(self):

super(basicqss,self).__init__()

self.setwindowtitle("qss控制項設定樣式基礎")

self.b1=qpushbutton("按鈕1")

self.b2=qpushbutton("按鈕2")

vbox=qvboxlayout()

vbox.addwidget(self.b1)

vbox.addwidget(self.b2)

self.setlayout(vbox)

if __name__=="__main__":

p=basicqss()

#定義所有button控制項的樣式背景色為紅色

#也可以稱為控制項選擇器

qssstyle='''

qpushbutton")

label.setfixedwidth(400) #設定最大寬度

label.setfixedheight(200)

b1=qpushbutton(self)

b1.setobjectname("b1")

b1.setmaximumsize(100,100) #設定最大寬度與最高寬度

v.addstretch() #新增一下拉伸,隨著兩控制項的大小來進行基於左上角自動伸縮

self.setlayout(v)

if __name__=="__main__":

p=labelback()

p.show()

5、裝載qss檔案

在pyqt5中動態裝載css檔案

from pyqt5.qtwidgets import *

import sys

#定義動態讀取qss檔案類

class common:

@staticmethod

def readqss(style):

with open(style,"r") as f:

return f.read()

class main(qmainwindow):

def __init__(self):

super(main,self).__init__()

self.setwindowtitle("動態載入qss檔案")

self.resize(477,258)

b1=qpushbutton("裝載qss檔案按鈕")

b1.settooltip("提示文字")

v=qvboxlayout()

v.addwidget(b1)

b1.clicked.connect(self.onclick)

self.setlayout(v)

w=qwidget(self)

self.setcentralwidget(w)

w.setlayout(v)

def onclick(self):

stylefile="./style.qss" #本地qss檔案

c=common()

qssstyle=c.readqss(stylefile)

p.setstylesheet(qssstyle)

if __name__=="__main__":

p=main()

p.show()

#本地qss檔案style.qss檔案**

qmainwindow{

border-image:url(./image/1.png);

qtooltip{

border:1px solid rgb(45,45,45);

background:white;

color:red

Qss 漸變顏色設定

1.漸變顏色設定有 qlineargradient 線性漸變顏色設定 qradialgradient 輻射漸變 qconicalgradient 圓錐形漸變 qlineargradient 顯示從起點到終點的漸變。qradialgradient 以圓心為中心顯示漸變。qconicalgradient...

QSS設定不生效問題

bug 描述 tableview 表頭初始化後,選中item 的表頭沒有按照產品qss 樣式顯示 bug原因 兩次設定qss 時,由於快取中沒有更新qss 樣式,造成樣式顯示的還是原來的樣式 修改方案 第一種 設定qss 之後,使用addwidget 代替直接傳父 第二種 設定qss 之後,使用se...

Qss學習之一 屬性設定

本文只介紹如何設定引數,不講解有哪些屬性引數。qss通過 selector declaration 設定其屬性引數等 我們在本地建立乙個qss檔案,然後在 中載入即可 1 簡單的qss語法 設定qwidget且obejectname為testwidget的屬性 qwidget testwidget ...