暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Kivy实现对话框功能

原创 zayki 2021-10-04
871
from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.button import MDRectangleFlatButton,MDFlatButton
from kivy.lang import Builder
from kivymd.uix.dialog import MDDialog

txt_string = '''
MDTextField:
    hint_text:"Please enter your username:"
    helper_text: "Or click forgot username!"
    helper_text_mode: "on_focus"
    icon_right: "android"
    icon_right_color: app.theme_cls.primary_color
    pos_hint: {"center_x":0.5,"center_y":0.5}
    width: 300
    size_hint_x: None
'''

class DemoAPP(MDApp):

    def build(self):
        screen = Screen()
        self.theme_cls.primary_palette = "Green"
        self.theme_cls.primary_hue = "500"
        self.theme_cls.theme_style = "Light"

        self.input_username = Builder.load_string(txt_string)
        btn_show = MDRectangleFlatButton(text = "ShowMe" , pos_hint = {"center_x":0.5,"center_y":0.4} , on_release = self.show_data )
        screen.add_widget(self.input_username)
        screen.add_widget(btn_show)
        return screen

    def show_data(self,obj):
        close_btn = MDFlatButton(text="Close", on_release=self.close_diag)
        more_btn = MDFlatButton(text="More", on_release=self.more_diag)

        if self.input_username.text == "":
            check_string = "Please enter a valid username."
            btns = [close_btn]
        elif self.input_username.text == "root":
            check_string = "Your username is right," + "Welcome,Dear " + self.input_username.text + "\nplease click more button."
            btns = [close_btn,more_btn]
        else:
            check_string =  "Your enter a wrong username,please close and input again."
            btns = [close_btn]

        self.diag_win = MDDialog(title = "Username Check",text = check_string  ,size_hint = (0.5,1),buttons = btns)
        self.diag_win.open()

    def close_diag(self,obj):
        self.diag_win.dismiss()

    def close_diag1(self, obj):
        self.diag_win1.dismiss()

    def more_diag(self,obj):
        close_btn = MDFlatButton(text = "Close",on_release = self.close_diag1)
        self.diag_win1 = MDDialog(title="Welcome Login User.", text="Dear colleague,welcome to my homepage.", size_hint=(0.5, 1),
                                 buttons=[close_btn])
        self.diag_win1.open()


DemoAPP().run()

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论