常用的QSS
对比CSS来学习对常见的控件美化。
还有对界面整体的美化,要学会如何使用QSS。
总之CSS特别是父子关系是一定要学习的。
还要清楚如何消除控件间的间隔,如何用QSS来影响布局,主要是影响2控件之间的布局。
使用qss
1.在代码文件中定义QSS样式
给某个控件使用样式可以使用setStyleSheet
# 给按钮btn设置样式
self.btn.setStyleSheet('background: cyan; border: none; color: #fff;')
## 给所有的QPushButton 按钮设置颜色
self.setStyleSheet('QPushButton {background: cyan; border: none; color: #fff;}')
## 给组件设置id,然后再根据id对其设定样式
self.btn1.setObjectName('btn1')
self.setStyleSheet('QPushButton#btn1{color: #f00; font-size: 20px;}')
2.在单独的外部环境中设定qss样式
单独定义一个xx.qss文件来写样式
注意点:在pyqt5中相同的样式好像只能使用一次,与前端css样式有区别
QPushButton{
background: cyan;
border: none;
color: #fff;
}
QPushButton:btn1 {
font-size: 18px;
}
借鉴自https://juejin.cn/post/6844903775447023630
常见的CSS关键字,背景,长度,宽度,前景色,背景色,字体颜色
几何样式
宽度
{max-width:200px; min-width:200px}
给控件标签或者按钮添加背景图片
# 图片的路径
filename = r".\images\Cloudy_72px.png"
# 写入图片
img = QImage( filename )
# 标签设置
label1 = QLabel(self)
label1.setFixedWidth(120)
label1.setFixedHeight(120)
# 这里设置按比例缩放图片;自带的么;但并未生效
result = img.scaled(label1.width(), label1.height(),Qt.IgnoreAspectRatio, Qt.SmoothTransformation);
label1.setPixmap(QPixmap.fromImage(result)) # 把图片添加到label标签上
努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。