Kivy:点击图片运行.py文件

时间:2017-11-17 07:35:17

标签: python python-2.7 kivy kivy-language

demo.Kv

AsyncImage:
            canvas:
                Rectangle:
                    texture: CoreImage("add.jpg").texture
                    size: self.width, self.height
                    size: 30, 30
                    pos: self.x - 1, self.y
                    #on_release: os.system("python test.py")

任何人都可以帮助我吗?

1.此代码位于我的.kv文件中。如何在add.jpg图像上单击运行test.py文件。

任何建议或指导将不胜感激.. !!

2 个答案:

答案 0 :(得分:1)

所以你的main.py中的相关内容可能是根(类)文件写一个将运行test.py的函数

def run_test():
    os.system('python file.py')

并导入os模块。现在将其替换为kv文件中的内容

on_release: root.run_test()

答案 1 :(得分:0)

您必须制作自定义小部件:

<强>的.py

from kivy.uix.image import AsyncImage
import os


MyAsyncImage(AsyncImage)

    #other stuff

    def on_touch_down(self, touch):
        if self.collide_point(*touch.pos):
            os.system('python file.py')

然后在你的.kv:

MyAsyncImage:
    canvas:
        Rectangle:
            texture: CoreImage("add.jpg").texture
            size: self.width, self.height
            size: 30, 30
            pos: self.x - 1, self.y