Ank*_*Pet 10 python pyqt pyqt4 qtstylesheets pyqt5
# -*- coding: utf-8 -*-
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
class MainWindow(QWidget):
def __init__(self):
super(MainWindow, self).__init__()
self.setFixedWidth(200)
self.setFixedHeight(200)
stylesheet = \
".QWidget {\n" \
+ "border: 20px solid black;\n" \
+ "border-radius: 4px;\n" \
+ "background-color: rgb(255, 255, 255);\n" \
+ "}"
self.setStyleSheet(stylesheet)
if __name__ == '__main__':
app = QApplication(sys.argv)
main = MainWindow()
main.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
我想用样式表添加边框到自定义小部件,但样式表似乎不起作用,有什么不对吗?
ekh*_*oro 26
首先:在示例中添加一个实际的小部件:
self.widget = QWidget(self)
layout = QVBoxLayout(self)
layout.addWidget(self.widget)
Run Code Online (Sandbox Code Playgroud)
其次:帮自己一个忙,并使用三引号:
self.widget.setStyleSheet("""
QWidget {
border: 20px solid black;
border-radius: 10px;
background-color: rgb(255, 255, 255);
}
""")
Run Code Online (Sandbox Code Playgroud)
注意:示例中的点选择器是多余的.它的作用是指定只QWidget
选择自身的实例,而不是子类QWidget
.请参阅Qt文档中的StyleSheet语法指南.
小智 8
在您的项目文件夹中添加一个基本的 CSS 文件 mystylesheet.css。像 Atom 这样的多语言编辑器最适合这类事情。如果将其命名为 CSS 文件,则语法突出显示可以正常工作。
然后放下点;qt 知道你的意思。
mystylesheet.css
QWidget {
border: 20px solid black;
border-radius: 10px;
background-color: rgb(255, 255, 255);
}
Run Code Online (Sandbox Code Playgroud)
anyQelement.setStyleSheet(open('mystylesheet.css').read())
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
37917 次 |
最近记录: |