主窗口(QMainWindow)如何放入文本编辑器(QPlainTextEdit)等继承自QWidget的对象--(重构版)

主窗口(QMainWindow)如何放入文本编辑器(QPlainTextEdit)等继承自QWidget的对象--(重构版)

前置知识
  • 由主窗口布局图像可知,QPlanTextEdit()需要放入CentrlWidget()
旧版区别

主要修复了一些可能的逻辑错误 造成的代码冗余

  1. 直接设置中心控件,无需继承主窗口
  2. 布局管理器直接继承主窗口,无需后续设置布局
代码示例
py 复制代码
# coding = utf-8

from PySide6.QtWidgets import (QMainWindow,QWidget,QVBoxLayout,QPlainTextEdit,QApplication)
import sys


if __name__ == "__main__":
    app = QApplication(sys.argv)
    mainWindow = QMainWindow()

	# 让文本编辑器 显示到 中央窗口上
    centralWidget = QWidget()
    mainWindow.setCentralWidget(centralWidget) # 无需传入父类 直接实例化 后续设置为中心控件即可
    plainTextEdit = QPlainTextEdit() # 无需传入父类 直接实例化 中心布局添加该控件即可

	# 放入中央窗口
    vbox = QVBoxLayout(centralWidget) #  直接传入中心窗口 实现中心布局
    vbox.addWidget(plainTextEdit)
    
    mainWindow.show()
    sys.exit(app.exec())
py 复制代码
# coding = utf-8
from PySide6.QtWidgets import (QMainWindow,QWidget,QVBoxLayout,QPlainTextEdit,QApplication)
import sys

class MyMainWin(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi()
        
    def setupUi(self):
        # 让文本编辑器 显示到 中央窗口上
        centralWidget = QWidget() # 无需传入父类 直接实例化 后续设置为中心控件即可
        self.setCentralWidget(centralWidget)
        plainTextEdit = QPlainTextEdit() # 无需传入父类 直接实例化 中心布局添加该控件即可

		# 放入中央窗口
        vbox = QVBoxLayout(centralWidget) # 直接传入中心窗口 实现中心布局
        vbox.addWidget(plainTextEdit)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    mainWindow = MyMainWin()
    mainWindow.show()
    sys.exit(app.exec())
相关推荐
东方佑6 分钟前
构建智能对话系统:Python实现聊天话题管理与摘要生成
jvm·python·oracle
前端世界35 分钟前
用Python手写一个能识花的感知器模型——Iris分类实战详解
开发语言·python·分类
少林and叔叔44 分钟前
基于yolov5.7.0的人工智能算法的下载、开发环境搭建(pycharm)与运行测试
人工智能·pytorch·python·yolo·目标检测·pycharm
合作小小程序员小小店1 小时前
旧版本附近停车场推荐系统demo,基于python+flask+协同推荐(基于用户信息推荐),开发语言python,数据库mysql,
人工智能·python·flask·sklearn·推荐算法
动能小子ohhh1 小时前
Langchain从零开始到应用落地案例[AI智能助手]【3】---使用Paddle-OCR识别优化可识别图片进行解析回答
人工智能·python·pycharm·langchain·ocr·paddle·1024程序员节
互联网中的一颗神经元1 小时前
小白python入门 - 9. Python 列表2 ——从基础操作到高级应用
java·开发语言·python
Serendipity_Carl2 小时前
爬虫数据清洗可视化案例之全球灾害数据
爬虫·python·pycharm·数据可视化·数据清洗
B站计算机毕业设计之家2 小时前
计算机视觉:YOLO实现目标识别+目标跟踪技术 pyqt界面 OpenCV 计算机视觉 深度学习 计算机(建议收藏)✅
python·opencv·yolo·计算机视觉·目标跟踪·口罩识别
AI小云3 小时前
【Python高级编程】类属性与类方法
人工智能·python
B站计算机毕业设计之家3 小时前
深度学习:YOLOv8人体行为动作识别检测系统 行为识别检测识系统 act-dataset数据集 pyqt5 机器学习✅
人工智能·python·深度学习·qt·yolo·机器学习·计算机视觉