一 前言
经过前面一篇QT入门文章,读者应该对QT有个简单的概念,本篇文章指在将窗口和业务逻辑分离开来,降低耦合度;
知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;)
二 分离代码
-
首先使用面向对象的思想,继承QWidget,如果多组件,可以使用多继承;
def __init__(self, parent=None): super().__init__(parent)
-
其次定义号初始化gui的内容,将gui方法放入构造器里面初始化;
-
最后在_main_中调用即可,就实现了界面与业务逻辑分离
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
""" 带窗口图标"""
class Windos(QWidget):
def __init__(self):
# 继承父类方法
super().__init__()
# 初始化gui
self.init_gui()
def init_gui(self):
# 设置弹出窗口的位置和大小,相当于move + resize
self.setGeometry(500, 500, 250, 300)
# 设置标题
self.setWindowTitle('知识追寻者')
# 设置窗口图标
self.setWindowIcon(QIcon('zszxz.png'))
# 显示
self.show()
if __name__ == '__main__':
# 基础模块
app = QApplication(sys.argv)
# 调用对象
ex = Windos()
# 循环退出
sys.exit(app.exec_())
显示如下,主流都是单继承
转载:https://blog.csdn.net/youku1327/article/details/105453287
查看评论