Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 如何通过kv打开弹出窗口?_Python 2.7_Kivy_Kivy Language - Fatal编程技术网

Python 2.7 如何通过kv打开弹出窗口?

Python 2.7 如何通过kv打开弹出窗口?,python-2.7,kivy,kivy-language,Python 2.7,Kivy,Kivy Language,这应该很容易,但我找不到答案。我需要通过.kv文件用按钮打开弹出窗口。更少的单词,更多的代码 #.kv #... Button: on_press: #Here I need something like #Popup_open: #title: 'title' #... 我知道我可以通过向我的根类添加函数来实现这一点 #main.py #... myclass(object): def myPo

这应该很容易,但我找不到答案。我需要通过
.kv
文件用按钮打开
弹出窗口
。更少的单词,更多的代码

#.kv
#...
Button:
    on_press:
        #Here I need something like
        #Popup_open: 
            #title: 'title'
            #...
我知道我可以通过向我的根类添加函数来实现这一点

#main.py
#...
myclass(object):
    def myPopup():
        Popup(title='title',message='message').open()
然后调用这个函数

#.kv
#...
Button:
    on_press: root.myPopup()
但这不是我最方便的方式使用两条规则:

#:import Factory kivy.factory.Factory

<YourPopup@Popup>:
    title: 'something'
    Label:
        text: 'content'
<Test>:
    Button:
        on_press: Factory.YourPopup().open()
#:导入工厂kivy.Factory.Factory
:
标题:“某物”
标签:
文本:“内容”
:
按钮:
按:Factory.YourPopup().open()

使用这个
弹出窗口
时,我感觉又遇到了麻烦。它应该显示警告和两个按钮
Yes和No
(此时一切正常)我的主类中有
main.py
中的函数,需要在按下
Yes
时调用此函数。我还需要将
TextInput
中的文本作为参数传递给此函数。我试着使用
#:如果按下
Yes
,则将答案设置为True,但不起作用。我还尝试在
.kv
文件中使用
global
,但没有结果。我可以提出一个更方便的问题啊,我明白了。我可以把这个函数放到我的主(App)类中,并用
App.myfunc()调用它,对吗?但是如何插入参数呢?