问题标签 [kivymd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 KivyMD 和 Pyinstaller 导入错误
当我尝试将 pyinstaller 与“ KivyMD Kitchen Sink ”(--one file --debug --clean)一起使用时,我得到了这个:
我尝试使用:
在 main.py 但没有任何改变。
此外,我将 Roboto-Regular.ttf 复制到 main.exe 的目录,但没有成功。
Pyinstaller 与其他 Kivy 应用程序配合得很好。
更新:
我找到了一个临时解决方案。我使用 pyinstaller 的--onedir
命令与 main.py 而不是 main.spec 文件:
然后,我将 kivymd 文件夹 (../site-packages/kivyMD) 复制到我的应用程序的文件夹中,应用程序启动时没有错误。
无论如何,我想冻结应用程序,有什么建议--onefile
吗?谢谢!
python - KivyMD:从屏幕类访问标签 ID
我正在使用 KivyMD 并希望使用“on_pre_enter”方法在第二个屏幕中刷新数据。我正在尝试从屏幕类“on_pre_enter”方法访问标签 ID,但没有成功。
我可以从“MainApp”类访问标签 ID,但无法从“Second_Screen”类访问它。
主应用程序.py
应用.kv
我也尝试过使用:
启动后我收到以下错误:
从屏幕类访问 KV 文件中定义的 id 的正确方法是什么?
python - 从 main.kv 文件 KivyMD 获取 id
这可能有一个简单的解决方案,但我无法弄清楚。以以下代码为参考
主文件
所以我正在尝试创建一个工具栏,当我使用上面的代码创建它时,除了 MDNavigation 抽屉出现在工具栏下方之外,一切都很好。我想为 Homescreen 类中的工具栏创建框布局,如下所示。
但是我似乎无法从我的 main.kv 文件中获取 self.nav_drawer id,我如何才能访问该 id 或者以这样的方式创建工具栏的另一种方法,以便当 MDNavigation 抽屉打开工具栏时在它下面。self.ids 的打印语句返回一个空字典 <class 'ObservableDict'>
python - KivyMD:独立的登录屏幕和 MDBottomNavigation
我想让我的登录屏幕作为应用程序启动时的默认屏幕。用户登录后,屏幕管理器应该切换到主屏幕,这是我的 MDBottomNavigation 的一部分(登录屏幕不是!)。
基本上,我正在尝试使登录屏幕独立于 MDBottomNavigation ......但我做不到。现在一开始我看到登录屏幕和带有 MDBottomNavigation 的主屏幕。
将来,我计划有其他屏幕,应该在特定情况下访问,但不能从 MDBottomNavigation 访问。我对 kivy 和 kivymd 都很陌生,将不胜感激!
这是我的 main.py:
这是main.kv
登录屏幕.kv:
主屏幕.kv:
python - 当我点击运行时,Kivy 窗口没有打开,使用退出代码 0 完成进程
这是我的名为 loginscreen.py 的 py 文件
这是我的名为 loginscreen.kv 的 kivy 文件:
这是我的终端输出:
有人可以向我解释为什么我在运行时无法打开 kivy 窗口吗?在我的 main.py 文件中,窗口打开得很好,但不是这个。是什么赋予了?
python - 如何使用 KivyMD 在 NavigationDrawer 中的屏幕之间切换
我是使用 kivymd 并尝试使用 KivyMD 在 NavigationDrawer 中的屏幕之间切换的初学者,我正在阅读一些文档并最终得到了这段代码,但它不适用于我:
但它给了我这个错误“AttributeError:'Screen'对象没有属性'nav_drawer'”,我不确定我做错了什么。
python - 我可以从 Python 触发在 KV 文件中创建的屏幕吗?
你好,
我实际上想要做的是以下几点:
我想创建这个登录屏幕,如果你有正确的邮件(在这种情况下只有 test@test.com)来从 KV 文件触发 inapp 屏幕,这是我的实际问题。
我无法触发“inapp”屏幕
我在 PY 文件中没有我的 screenmanager 和我的屏幕类的原因是因为它被窃听了,当我切换屏幕时它重叠 这是一个有问题的 UI 的示例
在我的情况下我做错了什么?
这是我的PY 文件:
这是KV 文件: