如何解决设计师小部件阴影?
我在主窗口中添加了一个小部件,我想给它一个类似 const graph = new Array(5).fill([]);
graph[0].push('hello');
console.log(graph[0][0]); // prints "hello";
console.log(graph[1][0]); // also prints "hello";
console.log(graph[2][0]); // also prints "hello";
console.log(graph[3][0]); // also prints "hello";
console.log(graph[4][0]); // also prints "hello";
我尝试了上面的小部件 const graph = new Array(vertices).fill().map(() => []);
选项并添加如下代码:
box-shadow: 3px 3px 25px #111;
前两个属性给出了预期的效果,但 box-shadow 不起作用。
如何使用 Python QT Designer 并为小部件添加框阴影?
解决方法
Qt StyleSheet 不是 CSS 但它是一种实现某些功能的技术,其中不包括 box-shadow。如果你想实现类似的东西,那么你应该使用 QGraphicsDropShadowEffect:
import sys
from PyQt5.QtCore import QPoint,Qt
from PyQt5.QtGui import QColor
from PyQt5.QtWidgets import (
QApplication,QGraphicsDropShadowEffect,QMainWindow,QVBoxLayout,QWidget,)
def main():
app = QApplication(sys.argv)
main_window = QMainWindow()
container = QWidget()
container.setContentsMargins(3,3,3)
main_window.setCentralWidget(container)
widget = QWidget()
widget.setAutoFillBackground(True)
lay = QVBoxLayout(container)
lay.addWidget(widget)
effect = QGraphicsDropShadowEffect(
offset=QPoint(3,3),blurRadius=25,color=QColor("#111")
)
widget.setGraphicsEffect(effect)
main_window.resize(640,480)
main_window.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
建议您阅读 Qt 样式表参考:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。