前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PySide6 GUI 编程(1): 环境准备与示例代码

PySide6 GUI 编程(1): 环境准备与示例代码

原创
作者头像
bowenerchen
修改2024-05-19 17:09:29
2070
修改2024-05-19 17:09:29
举报
文章被收录于专栏:编码视界编码视界

PySide6与PyQt6的区别

区别说明
区别说明

安装PySide6

安装 PySide6 库

代码语言:python
复制
pip install --upgrade PySide6
pip show pyside6
安装 PySide6
安装 PySide6

使用代码查看库版本信息:

代码语言:python
复制
import PySide6.QtCore
print(PySide6.__version__)

运行后得到输出:6.7.0

在PyCharm上配置Designer等工具

进入pip show pyside6展示的安装路径:

安装路径
安装路径

在此路径有有三个 .app 目录:

Assistant.app

Designer.app

Linguist.app

打开 Pycharm->Settings->Tools->External Tools,点解+号添加新的工具:

添加工具
添加工具
配置工具路径
配置工具路径
打开工具
打开工具
使用工具
使用工具

基于 PySide6 运行第一个窗口程序

代码语言:python
复制
from PySide6.QtWidgets import QApplication, QWidget

import sys

# 如果不想传入命令行参数,那么使用:
# app = QApplication([])
# 也可以正常运行
app = QApplication(sys.argv)

window = QWidget()
window.show()

app.exec()
第一个窗口程序
第一个窗口程序

一般来说,我们编写 GUI 程序,很少会希望从命令行传入参数,因此app = QApplication(sys.argv)显得有点多余,一般我们写成app = QApplication([])即可。

宏观上认识下 PySide6 的类

QWidget类

QWidget 类
QWidget 类

在Qt框架中,QWidgetQMainWindowQDialog是构建GUI应用程序的基础组件,它们都是QWidget类的不同子类,各自有不同的用途和特点:

QWidget

  • 定义QWidget 是所有控件和窗口的基类,提供了GUI组件的通用功能,如布局管理、绘图、事件处理等。
  • 用途:它是创建自定义控件和窗口的基础。大多数Qt应用程序都会直接或间接地使用QWidget的派生类。
  • 特点QWidget可以包含其他控件(如按钮、文本框等),并且可以作为其他窗口的子部件。

QMainWindow

  • 定义QMainWindowQWidget 的一个子类,专门用于创建主窗口。
  • 用途QMainWindow 提供了主窗口的基本结构,包括菜单栏、工具栏、状态栏和中心部件(central widget)。它通常用作应用程序的主窗口。
  • 特点QMainWindow 支持MDI(多文档界面),可以嵌入多个子窗口。它还提供了窗口系统菜单和状态栏的集成。

QDialog

  • 定义QDialog 也是 QWidget 的一个子类,用于创建对话框。
  • 用途QDialog 用于需要用户输入或反馈的交互式窗口,如登录框、设置窗口或消息提示框。
  • 特点QDialog 提供了对话框特有的功能,如默认按钮、取消按钮和帮助按钮。它还可以阻止用户在对话框打开时与应用程序的其他部分交互,除非对话框被关闭。

联系

  • 继承关系QMainWindowQDialog 都是 QWidget 的直接子类,共享 QWidget 的所有功能和属性。
  • 组合使用:在Qt应用程序中,通常首先创建一个 QMainWindow 作为主窗口,然后在其中嵌入或弹出 QDialog 对话框,以处理用户交互。
  • 功能区分:虽然 QMainWindowQDialog 都可以包含其他控件和布局,但它们在应用程序中的角色和行为不同。 QMainWindow 作为应用程序的主要工作区,而 QDialog 用于特定的交互任务。

在设计GUI应用程序时,根据需要选择合适的窗口类是非常重要的;

QWidget 提供了最大的灵活性,适合创建自定义控件和复杂布局;

QMainWindow 适合作为应用程序的主窗口,提供标准的窗口结构;

QDialog 适合创建需要用户响应的对话框。

QApplication类

QApplication 类
QApplication 类

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PySide6与PyQt6的区别
  • 安装PySide6
    • 安装 PySide6 库
      • 在PyCharm上配置Designer等工具
      • 基于 PySide6 运行第一个窗口程序
      • 宏观上认识下 PySide6 的类
        • QWidget类
          • QWidget
          • QMainWindow
          • QDialog
          • 联系
        • QApplication类
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档