Coder Social home page Coder Social logo

muziing / pyside6-code-tutorial Goto Github PK

View Code? Open in Web Editor NEW
900.0 9.0 114.0 5.55 MB

可能是最好的PySide6中文教程!用代码实例讲解PySide6,附优质Demos、图标库、QSS皮肤、相关文章等分享!

License: GNU General Public License v3.0

Python 100.00%
pyside6 python qt6 tutorial

pyside6-code-tutorial's Introduction

logo

PySide6 代码式教程

用代码实例讲解 PySide6 !

GitHub Repo stars License GitHub Last Commit PySide Version Code style: black Imports: isort Checked with mypy

简介

本教程旨在通过可以直接在本地机器上运行的脚本代码讲解介绍 PySide6

  • 代码中以详细的注释作为讲解
  • 每个模块(.py文件)都可独立运行,演示了各种控件的各种功能、属性、作用
  • 在自己的机器上实际运行一下,仔细观察一下每个属性值的改变会怎样影响控件的外观行为,可能比静态的文档教程更有效
  • 前身为 GitHub 热度最高的中文 PyQt5 教程 PyQt-Practice,目前已有 PyQt-Practice Stars 个 Stars
  • 相比 PyQt-Practice,改进了项目目录结构,增加了部分内容,更加清晰丰富
  • 使用最新的 Python 与 PySide 版本(目前为3.116.6

希望本项目对你我的 Python-GUI 学习之旅有所帮助。

思维导图目录

访问在线思维导图目录

如何使用

一、获取源代码

  1. Star 本仓库
  2. 通过以下方法之一获取源码
  3. 进入项目目录

二、配置虚拟环境与安装依赖

方式 Avenv(简单易用,推荐)

  1. 确保 Python 版本与 pyproject.toml 中要求的一致
  2. 创建虚拟环境
    • Windows: python -m venv --upgrade-deps venv
    • Linux/macOS: python3 -m venv --upgrade-deps venv
  3. 激活虚拟环境
    • Windows: venv\Scripts\activate
    • Linux/macOS: . venv/bin/activate
  4. 安装依赖:pip install -r requirements.txt

方式 BPoetry

  1. 确保 Python 版本与 pyproject.toml 中要求的一致
  2. 官方文档提示安装 Poetry
  3. 创建虚拟环境:poetry env use /full/path/to/python(注意替换路径)
  4. 安装依赖:poetry install --no-root --only main
  5. 使用该虚拟环境: poetry shell(或在 PyCharm 等 IDE 中配置)

更多 Poetry 使用方法信息,请参阅其官方文档

方式 C :其他包管理工具

  1. 使用你喜欢的其他工具创建虚拟环境,如 PipenvConda
  2. 安装 requirements.txt 中描述的依赖项

三、运行与学习

  1. 打开感兴趣的 .py 模块
  2. 阅读文档部分
  3. 运行,观察该界面/控件效果
  4. 阅读代码中的注释,可根据提示对特定行进行「注释/取消注释」
  5. 再次运行该模块,观察变化

项目结构

主要

目录/文件 描述
00. PySide Learning - 各种学习资源 文章、教程、Demo等资源
01. HelloWorld - PySide 基本结构 新手上路,PySide6 程序的基本结构
02. QtCore - 非GUI的核心功能 元对象系统、「信号与槽」通信机制等
03. QtWidgets - 常用控件 按钮、输入框、文本编辑器、下拉菜单、滚动条等等常用控件的功能、用法
04. QtGui - 使用GUI功能扩展QtCore 位图、字体、颜色、键盘快捷键等、事件(暂未完成)
05. QtWidgets - 进阶话题 布局管理器、QSS样式、主窗口控件等
06. Model/View - 模型与视图、数据库 模型与视图、与数据库交互
07. Packaging - 静态资源编译、打包 将应用程序打包为 exe、将静态资源编译至二进制 qrc 文件
…… ……

其他

目录/文件 描述
requirements.txt 依赖项,运行本项目必备
pyproject.toml 项目配置文件
poetry.lock Poetry 依赖项版本约束文件
.gitignore git 忽略提交规则
LICENSE 代码开源许可证
LICENSE-Article 文章许可协议
CONTRIBUTING.md 贡献指南
Resources 图片等静态资源

贡献

PySide6 Code Tutorial 是一个开源项目,非常期待以及感谢你的参与贡献。共同完善这个项目,让它帮助到更多人。

贡献的方式有很多种,并不一定都需要高超的编程能力:

  • 指出错别字、错误拼写等
  • 提议加入新功能、新模块等
  • 参与某个 QWidget 控件相关代码编写
  • 投稿优质 PySide6 相关博文、QSS 样式等
  • ……

关于为本项目提交贡献的详细信息,请查阅贡献指南

开源许可与分享约定

代码

本仓库中的代码使用 GPL-3.0 许可开源。对本项目的复制、分发和修改,请严格遵守该协议。

为便于使用者在自己的项目或博客文章中使用本仓库的代码片段,作以下分享约定:

类型 代码行数 来自模块 使用要求
少量代码 < 100 单个 .py 模块 直接复制使用即可,无需声明
短片段 < 500 6 个以内 .py 模块 在代码首行添加 # 来自 github.com/muziing/PySide6-Code-Tutorial 注释;如对代码有修改则必须明确声明
基于本项目修改衍生的项目 > 500 多个 .py 模块 严格遵守 GPLv3 相关要求

文章

本仓库中的文章,凡未注明作者的,均为 muzing 所著,使用 CC-BY 4.0 协议发布。

打赏

如果本项目对你有帮助,可以请主要作者/维护者喝一杯冰可乐 🍺。

微信赞赏码

pyside6-code-tutorial's People

Contributors

muziing avatar pre-commit-ci[bot] avatar sltlala avatar supercaizehua avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pyside6-code-tutorial's Issues

第四章 QtGui 没有了

你好,非常感谢您的贡献,让我们这些初学者能有好的中文学习资料,我在学习的过程中发现第四章 QtGui 没有了,能补充一下吗?万分感谢

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.