Mein letztes Projekt in Flet erforderte die Implementierung von DatePicker. Veamos ist das Beispiel, das der offiziellen Dokumentation von Flet vorgelegt wurde.
import datetime import flet as ft def main(page: ft.Page): page.horizontal_alignment = ft.CrossAxisAlignment.CENTER def handle_change(e): page.add(ft.Text(f"Date changed: {e.control.value.strftime('%Y-%m-%d')}")) def handle_dismissal(e): page.add(ft.Text(f"DatePicker dismissed")) page.add( ft.ElevatedButton( "Pick date", icon=ft.icons.CALENDAR_MONTH, on_click=lambda e: page.open( ft.DatePicker( first_date=datetime.datetime(year=2023, month=10, day=1), last_date=datetime.datetime(year=2024, month=10, day=1), on_change=handle_change, on_dismiss=handle_dismissal, ) ), ) ) ft.app(main)
Die Dokumentation wurde nicht bestätigt, da die Eigenschaften first_date und last_date vor jedem Auswurf der Anwendung aktualisiert wurden. Denken Sie daran, dass Sie eine App und die Parameter für erstes_Datum und letztes_Datum zusammenstellen müssen, wie im vorherigen Code, damit Fehler generiert werden können, wenn die Auswahl in der Zukunft gültig ist?
Meine App ist dazu bestimmt, Scraping auf X (Twitter) aus zwei festgelegten Gründen zu realisieren. Um es intuitiv und einfach zu verwenden (als App kompilierbar und ausführbar), überprüfe den Code, nachdem ich die Parameter first_date und last_date eingegeben habe, um die in den Momenten des Schreibens beurteilten Werte zu erhalten la App. Im letzten Jahr musste ich hasta ayer abkratzen, was passierte? Wie stellen wir fest, dass die Parameter von Sean Dinámicos darauf ausgelegt sind, die Zeitspanne bis zum Moment des Auswurfs zu berechnen?
Ante la duda, lo solví de esta manera:
import datetime import flet as ft # Crear una variable para la fecha actual de la ejecución today = datetime.datetime.now() def main(page: ft.Page): page.horizontal_alignment = ft.CrossAxisAlignment.CENTER def handle_change(e): page.add(ft.Text(f"Date changed: {e.control.value.strftime('%Y-%m-%d')}")) def handle_dismissal(e): page.add(ft.Text(f"DatePicker dismissed")) page.add( ft.ElevatedButton( "Pick date", icon=ft.icons.CALENDAR_MONTH, on_click=lambda e: page.open( ft.DatePicker( # Configuramos las variables para que un calendario válido desde hace un año a hoy y durante un año a futuro first_date=datetime.datetime(year=today.year - 1, month=today.month, day=today.day), last_date=datetime.datetime(year=today.year 1, month=today.month, day=today.day), on_change=handle_change, on_dismiss=handle_dismissal, ) ), ) ) ft.app(main)
In diesem Modus müssen wir darauf achten, dass wir unabhängig vom Moment darauf achten, dass die Anwendung ausgeführt wird (kompiliert oder nicht), die auswählbaren Elemente im Kalender werden in einem zeitlich konfigurierbaren Register angezeigt, das als anfänglicher Parameter für die fehlerhafte Ausgabe verwendet wird.
Dies ist auch ein nützliches Ergebnis für die Implementierung spezieller Funktionen, die Einschränkungen für die auswählbaren Fechas erfordern. Wenn Sie nur eine Auswahl treffen bis zum heutigen Tag, können Sie nicht darauf achten, dass die Fechas in Zukunft ausgewählt werden.
Haben Sie beispielsweise in meiner Scraping-App die Möglichkeit, in der Zukunft konfigurierbare Dateien zu erhalten, wenn die Karte Informationen aus der Vergangenheit reproduziert?
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3