Skip to main content

Waiting spinner for PyQt5

Project description

QtWaitingSpinner

PyPI version

QtWaitingSpinner is a highly configurable, custom Qt widget for showing "waiting" or "loading" spinner icons in Qt applications, e.g. the spinners below are all QtWaitingSpinner widgets differing only in their configuration:

waiting spinner

The widget is pretty customizable:

examples

Installation

pip install pyqtspinner

Configuration

The following properties can all be controlled directly through their corresponding setters:

  • Color of the widget
  • "Roundness" of the lines
  • Speed (rotations per second)
  • Number of lines to be drawn
  • Line length
  • Line width
  • Radius of the spinner's "dead space" or inner circle
  • The percentage fade of the "trail"
  • The minimum opacity of the "trail"

Usage

You can easily adjust spinner settings by running:

pyqtspinner-conf

configuration

Make the spinner you would like and press "show init args" button. It will generate the code snippet which is almost ready-to-use:

WaitingSpinner(
    parent,
    roundness=100.0,
    opacity=3.141592653589793,
    fade=80.0,
    radius=10,
    lines=20,
    line_length=10,
    line_width=2,
    speed=1.5707963267948966,
    color=(0, 0, 0)
)

As an alternative example, the code below will create a spinner that (1) blocks all user input to the main application for as long as the spinner is active, (2) automatically centers itself on its parent widget every time "start" is called and (3) makes use of the default shape, size and color settings.

spinner = QtWaitingSpinner(self, True, True, Qt.ApplicationModal)
spinner.start() # starts spinning

Enjoy!

Thanks:

to @z3ntu for the groundwork. to @snowwlex for the widget itself.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqtspinner-2.0.0.tar.gz (7.3 kB view hashes)

Uploaded Source

Built Distribution

pyqtspinner-2.0.0-py3-none-any.whl (8.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page