主窗口(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())
相关推荐
老前端的功夫1 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
yaoxin5211232 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
dFObBIMmai2 小时前
MySQL主从同步中大事务导致的延迟_如何拆分大事务优化同步
jvm·数据库·python
szccyw02 小时前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python
小白学大数据2 小时前
Python 自动化爬取网易云音乐歌手歌词实战教程
爬虫·python·okhttp·自动化
风之所往_3 小时前
Python 3.0 新特性全面总结
python
2401_882273724 小时前
如何在 CSS 中正确加载本地 JPG 背景图片
jvm·数据库·python
Lucas_coding4 小时前
【Claude Code Router】 Claude Code 兼容 OpenAI 格式 API, Claude code 接入本地部署模型
人工智能·python
测试员周周4 小时前
【AI测试系统】第5篇:从 Archon 看 AI 工程化落地:为什么"确定性编排+AI 弹性智能"是终局?
人工智能·python·测试
大飞记Python5 小时前
【2026更新】Python基础学习指南(AI版)——04数据类型
开发语言·人工智能·python