【问题标题】:How to import a function from a Python file into a Kivy file?如何将 Python 文件中的函数导入 Kivy 文件?
【发布时间】:2021-08-23 16:02:47
【问题描述】:

我的 main.py python 文件中有一个名为 resource_path 的函数,如下所示:


def resource_path(relative_path):
    try:
        base_path = sys._MEIPASS
    except Exception:
        base_path = os.path.abspath(".")

    return os.path.join(base_path, relative_path)

我想在我的 main.kv 文件中使用这个函数,比如使用下面的命令来调用图像:

<ImageScreen>


    MDBoxLayout:
        id: logo_box
        adaptive_height: True
        orientation: "vertical"


        Image:
            source: resource_path("CoinSnack_Logo.png")

所以,我尝试在 main.kv 文件中使用以下代码导入函数:

#:import resource_path main.resource_path

当我在我的 Python 项目中运行 main.py 时,一切正常。但是当我运行我从项目编译的 .exe 文件时,我收到以下错误:

      1:#:import toast kivymd.toast.toast
 >>   2:#:import resource_path main.resource_path
      3:
      4:#creating the screen manager for multiple screens
 ...
 Unable to import package 'main.resource_path'
[12132] Failed to execute script main


如果有人能帮我解决这个问题或告诉我如何将 Python 文件的函数导入 Kivy 文件,我将不胜感激。

非常感谢!

【问题讨论】:

    标签: python function import kivy kivymd


    【解决方案1】:

    试试:

    source: root.resource_path("CoinSnack_Logo.png")
    

    如果这不起作用,请尝试:

    source: app.resource_path("CoinSnack_Logo.png")
    

    也删除

    #:import resource_path main.resource_path
    

    我相信这会奏效

    【讨论】:

    • 这对我不起作用....
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-22
    • 2022-06-20
    • 1970-01-01
    • 2021-05-04
    • 2016-08-05
    • 1970-01-01
    相关资源
    最近更新 更多