"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > التعامل مع منتقي التاريخ في الأسطول

التعامل مع منتقي التاريخ في الأسطول

تم النشر بتاريخ 2024-11-06
تصفح:750

Manejo de DatePicker en Flet

يطلب مشروعي الأخير في Flet تنفيذ DatePicker. نستعرض المثال الذي يقدم التوثيق الرسمي لـ Flet.

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)

لا يتم توضيح المستندات إذا تم تحديث الخصائص first_date و last_date بسبب خلل قبل تشغيل التطبيق كل مرة. هل نفترض أننا نجمع تطبيقًا ومعلمات first_date و last_date التي يتم الاحتفاظ بها في الكود السابق، هل يمكن أن يؤدي هذا إلى حدوث أخطاء في لحظة تحديد النتائج الصالحة في المستقبل؟

تم تصميم تطبيق Mi لتحقيق الحذف على X (Twitter) بين العبارات المحددة. من خلال البحث عن بديهية وسهولة الاستخدام (كتطبيق يتم تجميعه وقابل للتنفيذ)، ومراجعة الكود لي سؤال حول ما إذا كانت المعلمات first_date و last_date تحافظ على القيم التي تم تحديدها في لحظات الكتابة لا التطبيق. Si dentro de un año, alguien quisiera crackear hasta ayer, ¿podría hacerlo? ¿كيف يمكننا التأكد من أن المعلمات تتسم بالديناميكية حتى يتم حساب الوقت من لحظة التنفيذ؟

قبل الزواج، حل هذه الطريقة:

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)

بهذه الطريقة، نضمن لك بشكل مستقل اللحظة التي تقوم فيها بتشغيل التطبيق (المجمع أو لا)، وستوفر الملفات المحددة في التقويم سجلًا مؤقتًا قابلاً للتكوين حسب المعلمة الأولية للتنفيذ نفسه.

يهدف هذا أيضًا إلى الاستفادة من تنفيذ وظائف محددة تتطلب قيودًا على العناصر المحددة، مثل السماح فقط بالاختيار حتى يوم اليوم، حتى لا ترغب في الشعور برغبة في الحصول على نتائج مستقبلية.

على سبيل المثال، في تطبيق التجريد الخاص بي، ما الذي يجعلني أرغب في السماح بالتكوينات القابلة للتكوين في المستقبل عندما يتم استعادة معلومات الماضي؟

بيان الافراج تم نشر هذه المقالة على: https://dev.to/matzalazar/manejo-de-datepicker-en-flet-1g1p?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3