0
from kivymd.app import MDApp
from kivy.lang import Builder
from kivymd.uix.dialog import MDDialog
from kivy.core.window import Window
from kivy.uix.screenmanager import ScreenManager,Screen

Window.size = (400, 600)

class Log_in(MDApp,Screen):
   def dop(self):
      username = self.id_v.user.text
      password = self.id_v.passw.text
      if username == "MD" and password == "kivy":
         Main().run()
     else:
        dial = MDDialog(text='Opps Wrong!', background_color=(0.3, 1, 1, 0.3))
        dial.open()

   Window.keyboard_anim_args = {'d': .2, 't': 'in_out_expo'}
   Window.softinput_mode = "below_target"

上面的代码是登录功能

class Main(MDApp,Screen):
   pass

我刚刚在主类中添加了更多功能,例如对话框。

class WindowManager(ScreenManager):
  pass

kv=Builder.load_file("Wolf.kv")

class Wolf(MDApp):
def build(self):
    return kv

if __name__=="_main_":
  Wolf().run()

这是我的 Wolf.kv 文件

WindowManager:
   Log_in:
   Main:

<Log_in>:
   name:"log"
   user:user
   passw:passw
   FloatLayout:
      orientation:"vertical"
      canvas.before:
         Color:
            rgba:(43/255, 41/255, 68/255,0.7)
         Rectangle:
            size:self.size
            pos:self.pos
     MDTextField:
        id: user
        hint_text : "Enter your Name"
        helper_text : "Have u forget it?"
        helper_text_mode : "on_focus"
        icon_right : "android"
        icon_right_color : app.theme_cls.primary_color
        size_hint_x :None
        width : '300'
        pos_hint:{'center_x':0.5,'center_y':0.6}
        multiline : False
        foreground_color:0,0,1,1
    MDTextField:
        id: passw
        hint_text : "Enter your Password"
        helper_text : "Got it?"
        helper_text_mode : "on_focus"
        icon_right : "key"
        icon_right_color : app.theme_cls.primary_color
        size_hint_x :None
        width : '300'
        pos_hint:{'center_x':0.5,'center_y':0.5}
        multiline : False
        password:True
    MDRectangleFlatButton:
        id:btn
        text:"Log in"
        pos_hint:{'center_x': 0.5, 'center_y': 0.4}
        on_press:root.dop()
<Main>:
   name:"main"
   Button:
     text:'hi'   

正如我之前提到的,我在 Main 类中添加了很多东西。

请不要介意这些缩进错误。我尝试了很多,但它不起作用。屏幕管理有错误吗?谢谢 :)

4

0 回答 0