Awesome
DearPyGui examples
A collection of example scripts which demonstrate various features/functionality in DearPyGui.
<p align="center"> <img src="assets/gifs/simple_paint.gif" width="420"> <img src="assets/gifs/marker_size.gif" width="330"> </p> <p align="center"> <img src="assets/gifs/progress_bar.gif" width="480"> </p>Examples
- Buttons
- Data binding
- Drawing
- Fonts
- Listbox
- Menubar
- Misc
- Persistence
- Plots
- Sizing
- Spacing
- Tables
- Threading
- Window
Buttons
Examples of how to implement various types of buttons. This includes how to implement a button which changes colour when clicked and how to implement nested radio buttons.
Data binding
Examples of how to link a data structure to GUI items so that changes made using the GUI are reflected in the underlying data structure.
<img src="assets/pngs/data_binding.png" width="400"/>Drawing
Examples of how to use the drawing API.
Simple paint
A very simple implementation of a paint app. It demonstrates how you can click and drag the mouse on a dpg.add_drawlist
and draw basic free-form lines using dpg.draw_line
.
Fonts
Examples of how to use custom fonts. And some tips on how to get the best results.
Listbox
Examples of custom listbox widgets which extend the functionality of the default listbox. Includes how to implement a listbox which is unselected by default and how to respond to key presses.
Menubar
Examples of how to implement all the different types of menubar and how to implement a right-aligned menubar.
Misc
Miscellaneous examples.
Persistence
Examples of how to save and load the state of a GUI. This includes the values of GUI items, the position of windows, etc. A simple example using dict
is shown as well as an approach using dataclasses
. Both store the app state in a JSON file.
Plots
Examples of how to implement various features in plots. Such as enforcing axes limits and updating colours and marker styles.
Sizing
Examples of how to size/re-size GUI items. There are some quirks with sizing - mainly to do with getting the correct size of an item on startup.
Spacing
Examples of how to space GUI items using different methods. This includes automatic spacing, spacing using a grid of child windows and spacing using tables.
Tables
Examples of how to use tables.
Threading
Examples of how to use threading in DearPyGui. Includes a start/stop button which can be used to start/stop a thread and a progress bar to show the progress of a task.
Progress bar
A basic progress bar with a start button. Once running, the start button changes to a pause button. The task can then be paused, upon which the pause button changes to a resume button and a reset button appears.
Window
Examples of how to manage windows. This includes how to create a window which is always on top and how to drag the viewport when decorated=False
. Also includes restricting the position of a window and how to implement a clicked handler for child windows.