mirror of
https://github.com/pythonguis/pythonguis-examples.git
synced 2025-01-27 17:02:56 +08:00
b74592ea41
Break down examples into module files to make easier to read. Use full-definitions on Enums (PyQt6 compatible, better documenting). Add fixes for Qt6 versions & some general bugfixes.
94 lines
4.1 KiB
Markdown
94 lines
4.1 KiB
Markdown
# Python GUIs Examples
|
|
|
|
**This repository contains 100s of GUI examples written in Python**. From complete working applications to reusable widgets snippets, these examples can
|
|
be _freely_ re-used, re-mixed and tweaked to build your own Python GUI applications.
|
|
|
|
Examples are available for
|
|
[PyQt6](https://github.com/pythonguis/15-minute-apps/tree/master/pyqt6),
|
|
[PySide6](https://github.com/pythonguis/15-minute-apps/tree/master/pyside6),
|
|
[PySide2](https://github.com/pythonguis/15-minute-apps/tree/master/pyside2)
|
|
and [PyQt5](https://github.com/pythonguis/15-minute-apps/tree/master/pyqt5)
|
|
|
|
> Many of these examples have more detailed write-ups on the [Python GUIs website](https://www.pythonguis.com/). If you're new to creating GUI apps check out the introductory [PyQt6 tutorial](https://www.pythonguis.com/pyqt6-tutorial/) or [PySide6 tutorial](https://www.pythonguis.com/pyside6-tutorial/).
|
|
|
|
## The demo apps
|
|
|
|
The apps showcase various parts of the Qt framework, including advanced widgets,
|
|
multimedia, graphics views and decorationless windows. However, the most
|
|
generally interesting/feature complete applications are Minesweeper, Solitaire
|
|
and Paint.
|
|
|
|
1. Web Browser (untabbed) - "MooseAche"
|
|
1. Web Browser (tabbed) - "Mozzarella Ashbadger"
|
|
1. Minesweeper - "Moonsweeper"
|
|
1. Notepad - "No2Pads"
|
|
1. Calculator - "Calculon" (QtDesigner)
|
|
1. Word Processor - "Megasolid Idiom"
|
|
1. Webcam/Snapshot - "NSAViewer"
|
|
1. Media Player - "Failamp"
|
|
1. Post-it Notes - "Brown Note" (QtDesigner)
|
|
1. Paint - "Piecasso" (QtDesigner)
|
|
1. Unzip - "7Pez" (QtDesigner)
|
|
1. Translator - "Translataarrr" (QtDesigner)
|
|
1. Weather - "Raindar" (QtDesigner)
|
|
1. Currency converter - "Doughnut" (PyQtGraph)
|
|
1. Solitaire - "Ronery" (QGraphicsScene)
|
|
|
|
## The widgets
|
|
|
|
|
|
![Graphical Equalizer](https://i.imgur.com/0F2ZgqE.gif)
|
|
**Graphical Equalizer** Visualize audio frequency changes with configurable styles and decay.
|
|
|
|
![Power Meter](https://i.imgur.com/0dpZIMV.gif)
|
|
**Power Bar** Rotary control with amplitude display.
|
|
|
|
![Palette](https://cdn.learnpyqt.com/media/images/Screenshot_2019-06-15_at_15.18.14.max-500x500.png)
|
|
**Palette** Select colors from a configurable linear or grid palette.
|
|
|
|
![Gradient Editor](https://cdn.learnpyqt.com/media/images/Screenshot_2019-06-15_at_18.32.52.max-500x500.png)
|
|
**Linear Gradient Editor** Design custom linear gradients with multiple stops and colors.
|
|
|
|
**Color Button** Simple button that displays and selects colors.
|
|
|
|
**Paint** Draw pictures with a custom bitmap canvas, with color and pen control.
|
|
|
|
**Password Edit** A password line editor with toggleable visibility action.
|
|
|
|
![Toggle Widget](https://i.imgur.com/rHrkkG3.gif)
|
|
Replace checkboxes with this handy toggle widget, with custom colors and optional animations.
|
|
|
|
## The tutorials
|
|
|
|
As well as the complete apps & re-usable widgets we've got selection of code snippets taken from tutorials on the [Python GUIs](https://www.pythonguis.com) website. These guide you through building GUIs with PyQt, PySide and other libraries.
|
|
|
|
## Getting started
|
|
|
|
To use each app you first need to install the requirements. In most cases
|
|
the only requirements are the GUI library and occasionally requests. To install
|
|
example specific requirements change to the folder of the example and run:
|
|
|
|
pip3 install -r requirements.txt
|
|
|
|
Once the requirements are installed, you can run the app. Every example in this repo comes with a main Python file called `main.py` to keep things simple.
|
|
|
|
python3 main.py
|
|
|
|
The application window should appear.
|
|
|
|
## Want to build your own apps?
|
|
|
|
> If you think these apps are neat and want to learn more about
|
|
take a look at my [PyQt6 tutorial](https://www.pythonguis.com/pyqt6-tutorial)
|
|
which covers everything you need to know to start building your own applications with Python.
|
|
|
|
You can also find more write-ups and tips [on the same site](http://www.pythonguis.com/).
|
|
|
|
## License
|
|
|
|
All code is **licensed under an MIT license**. This allows you to re-use the code freely, remixed in both commercial and non-commercial projects. The only requirement is to include the same license when distributing.
|
|
|
|
## Other licenses
|
|
|
|
Icons used in the applications are by [Yusuke Kamiyaman](http://p.yusukekamiyamane.com/).
|