【问题标题】:Python : How add a datepicker in .kv filePython:如何在 .kv 文件中添加日期选择器
【发布时间】:2018-01-30 06:28:52
【问题描述】:

谁能告诉我如何在date TextBox 上添加date picker 或kivy 日历?
我有两个文件 test.pytest.kv 文件。

test.py

import kivy
import sqlite3 as lite

from kivy.uix.screenmanager import Screen
from kivy.app import App
from kivy.lang import Builder
from kivy.core.window import Window
from kivy.uix.label import Label


Window.clearcolor = (0.5, 0.5, 0.5, 1)
Window.size = (400, 125)


class Testing(Screen):
    pass

class Testing(App):

    def build(self):
        self.root = Builder.load_file('test.kv')
        return self.root


if __name__ == '__main__':
    Testing().run()

test.kv

Testing:
    BoxLayout:
        orientation: "vertical"
        padding : 20, 20

        BoxLayout:
            orientation: "horizontal"
            padding: 10, 10
            spacing: 10, 10
            size_hint_x: .55

            Label:
                text: "Date"
                text_size: self.size
                valign: 'middle'
                size_hint_x: .2

            TextInput:
                size_hint_x: .3

        BoxLayout:
            orientation: "horizontal"
            padding : 10, 0
            spacing: 10, 10
            size_hint: .5, .7
            pos_hint: {'x': .25, 'y':.25}

            Button:
                text: 'Ok'
                on_release:
                    root.dismiss()

            Button:
                text: 'Cancel'
                on_release: root.dismiss()

【问题讨论】:

    标签: python python-3.x python-2.7 kivy kivy-language


    【解决方案1】:

    .kv 文件

    #:import MDTextField kivymd.uix.textfield.MDTextField
    MDTextField:
        id: set_date
        hint_text: 'Start Date'
        write_tab: False
        on_focus: root.setDate()
    

    .py 文件

    from kivymd.uix.picker import MDDatePicker
    def setDate(self,dobj):
        self.ids.set_date.text = str(dobj)
        pass
    
    def fromDate(self):
        self.foc = self.ids.set_date.focus
        if(self.foc==True):
            MDDatePicker(self.setFDate).open()
        else:
            print("not")
    

    【讨论】:

      猜你喜欢
      • 2017-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多