Skip to main content

A simple component to add a timer to your flet app

Project description

Flet Timer

The Flet Timer is a timer component for the Flet framework that is based on the last example from the Flet User Controls guide. It demonstrates how to create a countdown timer using threading for real-time display updates.

Installation

To use the Flet Timer, you can install it using pip:

pip install flet-timer

Usage

Here's an example that demonstrates how to use the Flet Timer.

First, let's define a callback function that will execute at a specified interval:

def refresh():
    txt_time.value = datetime.now().strftime("%H:%M:%S")
    page.update()

Next, create the Timer object with the desired interval in seconds, a name, and the callback:

timer = Timer(name="timer", interval_s=1, callback=refresh)

Finally, add the Timer component to the page:

page.add(timer)

The complete example code would look like this:

from datetime import datetime
import flet as ft
from flet_timer.flet_timer import Timer


def main(page: ft.Page):
    page.title = "Flet Timer example"
    page.vertical_alignment = ft.MainAxisAlignment.CENTER
    page.horizontal_alignment = ft.CrossAxisAlignment.CENTER

    txt_time = ft.Text(value="None")

    def refresh():
        txt_time.value = datetime.now().strftime("%H:%M:%S")
        page.update()

    timer = Timer(name="timer", interval_s=1, callback=refresh)

    page.add(
        timer,
        txt_time
    )


ft.app(main)

In this example, we create a Flet application that displays the current time using the Text component. We define a refresh() function that updates the txt_time value with the current time and triggers a page update. We instantiate a Timer with a 1-second interval and the refresh() function as the callback. The timer continuously calls the callback, updating the UI with the current time.

Certainly! Here's the disclaimer in markdown format:

Disclaimer

Please note that this package is provided as-is and has not been extensively tested. While the provided functionality should work in most situations, there is a possibility of unforeseen issues or compatibility conflicts.

It is recommended to thoroughly test the package and adapt it to your specific use case before deploying it in a production environment.

Contributing

Contributions to the Flet Timer project are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request on the GitHub repository.

License

The Flet Timer is open-source software released under the MIT License. See the LICENSE file for more information.

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

flet_timer-0.0.11.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

flet_timer-0.0.11-py3-none-any.whl (4.1 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