问题:
自己写个了处理数据的小程序,想要在不同的部分之间做个区域划分,使用实线或者虚线标记。
找了几个界面方法:1.使用画图QPainter,画所需要的线。
2.添加按钮,将按钮设置成线的形式
这两种方式都不适合我这个界面,我的界面有很多子界面,并非一个主界面。
解决方法:
最后使用了Qframe框架容器。
看一个简单的效果
# 代码中原有的设置布局
self.widget_resist_cal = QtWidgets.QWidget()
self.horizontalLayout_resist_cal = QtWidgets.QHBoxLayout(self.widget_resist_cal)
self.horizontalLayout_resist_cal.setObjectName("horizontalLayout_resist_cal")
# 用frame实现画线,但是没有实现画虚线
frame = QFrame(self.widget_resist_cal) # 创建实例
frame.resize(890, 890)
frame.move(20, 84)
frame.setStyleSheet('background-color:grey;') # 设置背景色
在界面中先添加了红色的线
QWidget:就是一个容器
QFrame:也是一个容器,不过是一个有边框的容器
两者的主要区别就是容器有无边框
frame.resize(890, 890) 设置大小 frame.move(20, 55) 设置偏移位置
通过调整参数,达到了画直线的效果