与python和Kivy抗争

2024-10-03 09:20:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习python和Kivy,我真的很难理解如何从kivygui调用函数和继续函数。在

这是我的.py:

import csv
import os
import easygui
import kivy
kivy.require('1.0.7')

from kivy.app import App
from kivy.animation import Animation
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput

def csvImport(filename):
    with open(filename, 'rb') as f:
        reader = csv.reader(f)
        your_list = list(reader)
        return your_list

class LoadFile(App):
    def FileLoadScreen(self):
        self.add_widget(Button(size_hint_y=(None), height=('48dp'), text='Select File',
                    on_press=self.ImportFile))

    def ImportFile(self, instance):
        filepath = easygui.fileopenbox()
        if filepath!='.':
            a=csvImport(filepath)
            instance.text='File Loaded'
            instance.disabled=True

class loginBAKApp(App):
    def logAuth(username,password):
        if username!='' and password!='':
            print('ok')
    kv_directory = 'GUI'

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

这是我的罗金巴克千伏公司名称:

^{pr2}$

这段代码似乎可以正常工作(当我单击login按钮时,它会打印“OK”。我试着用

on_press: logAuth(username,password)

我得到一个错误,没有定义logAuth。在

最后,我在这里尝试建立的模型(作为我的第一次学习经验)是点击login按钮,只要字段不为空,显示登录成功消息5秒钟,然后删除这些字段并调用LoadFile应用程序(添加一个可以单击以选择和导入文件的按钮)。在

我到底做错了什么?我已经在网上筛选了大约60个脚本,并且已经看了几个小时的Kivy示例,我不知道我是怎么做错的。有人能为我指出正确的方向和/或建议创建/删除gui来完成我所描述的吗?我是Kivy新手(可以编写基本的python脚本),所以当我读到关于stackoverflow的其他问题时,这会让我有点困惑。在


Tags: instancefromimportselfappifdefusername
1条回答
网友
1楼 · 发布于 2024-10-03 09:20:26
on_press: logAuth(username,password)

logAuth是app类的一个方法,而不是在kv命名空间中定义的函数。您可以改为使用app.logAuth(...)app是引用当前应用程序实例的关键字。在

相关问题 更多 >