PyQt
昨日回顾
窗口创建的方式
- QWidget
区域单一,只有窗口的内容区域 - QMainWindow,它是QWidget的子类
空间划分成了四五块,菜单栏,toolbar,状态栏,
中间的内容区域。
QMainWindow和最外层的容器关联的写法
第一种写法
container = QVBoxLayout(self)
第二种写法
self.setCentralWidget(container) - QDialog
更倾向于做对话框,自定义对话框。
信号和槽(重点)
- 信号:就是一些事件 (按钮点击,窗口关闭,内容改变)或者是一些状态发生了
- 槽:就是一个函数。当事件发生后,就执行这个函数 绑定信号和槽函数。
(也可以自己定义信号,自己发射信号)
自定义控件
所有的可视化UI的程序,都是绘制出来的控件。绘制函数paintEvent()
def paintEvent(self,PaintEvent):
#1.画家 参数:QPaintDevice,画的东西,画到哪里去。
# self 表示画到当前的窗口上
painter = QPainter(self)
p = OPen(QColor(255,0,0))
p = OPen(QColor(Qt.blue))#也可以设置自带的颜色
painter = setPen()#设置别的颜色
painter = drawLine(10,10,200,200)