0x00
PyQt原生支持界面与逻辑分离,特别是使用QtDesigner
设计界面。
0x01 转换UI文件
使用QtDesigner
设计并保存界面之后,会产生一个.ui
文件,这里我们使用PyUIC
去直接将其转换为.py
文件。
打开这个.py
文件,我们可以看到它是由PyUIC
自动生成的,并且声明了不应该改动这个文件的代码,因为每次从.ui
文件生成的时候都会将其覆盖。
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'MainWindow.ui'
#
# Created by: PyQt5 UI code generator 5.10.1
#
# WARNING! All changes made in this file will be lost!
0x02 逻辑代码
既然不能直接在生成的.py
文件中进行编辑,那么我们可以继承UI类,从而来编写逻辑代码。
from PyQt5 import QtWidgets
from ui.MainWindow import Ui_MainWindow
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self)
# Your code
0x03 运行代码
import sys
from PyQt5.QtWidgets import QApplication
from logic.MainWindow import MainWindow
if __name__ == '__main__':
app = QApplication(sys.argv)
MainWindow = MainWindow()
MainWindow.show()
sys.exit(app.exec_())
FROM :rickyhao.com | rickyhao.com
相关推荐: Jarvis OJ -WEB-WRITE-UP(一)
Jarvis OJ -WEB-WRITE-UP(一) PORT51 题目链接: http://web.jarvisoj.com:32770/ 访问页面之后,页面显示: Please use port 51 to visit this site. 当时看到了这个…
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论