PyQt学习之基础功能设置
因为实在忍受不了C#的编码风格,但又要写窗体所以就转投Qt的怀抱,于是就开始研究PyQt,并使用PyQt5。
导言
1. Pyqt 设置禁止最大化及禁止拖拽窗口大小
1 | # PyQT禁止窗口最大化按钮: |
2. 当按下Esc退出
重载keyPressEvent
1 | def keyPressEvent(self, event): |
3.去掉标题栏
1 | self.setWindowFlags(Qt.FramelessWindowHint Qt.WindowStaysOnTopHint) |
4.触发信号槽
内部方法 triggered() clicked()
执行: quit()
1 | QtGui.QWidget.connect(self.ui_qr.pushButtonOk, QtCore.SIGNAL('clicked()'), self.generateQr) |
5.弹框消息
消息类型: information, warning, question, about
1 | OK = QtGui.QMessageBox.question(self, (u'提示'),(u'滚动轴点击'),QtGui.QMessageBox.Yes , QtGui.QMessageBox.No) |
6.支持窗口拖动
重载鼠标事件方法
1 | def mousePressEvent(self, event): |
7.设置全局编码
1 | # -*- coding: utf-8 -*- |
8.设置标题、Icon
1 | label.setPixmap(QtGui.QPixmap(filename)) |
9.设置button, lineEdit等字体
1 | self.lineEdit.setFont(QFont("SimSun", 18, QFont.Bold)) # 宋体 18号字体 粗体 |
10.退出后,后台继续保持进程
1 | app.setQuitOnLastWindowClosed(True) #true 关闭, false 开启后台 |
11.显示在最前端
1 | self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) |
12.窗体透明度
1 | self.setWindowOpacity(0.5) # 1表示100%显示, 0.5 透明度50% |
13.只显示关闭按钮
1 | self.setWindowFlags(Qt.CustomizeWindowHint Qt.WindowCloseButtonHint ) |