Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.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 Kivy-保存对象';s值在弹出窗口中更改,因此在关闭后,当我再次打开弹出窗口时,它将以新值打开_Python_Python 3.x_Kivy_Kivy Language - Fatal编程技术网

Python Kivy-保存对象';s值在弹出窗口中更改,因此在关闭后,当我再次打开弹出窗口时,它将以新值打开

Python Kivy-保存对象';s值在弹出窗口中更改,因此在关闭后,当我再次打开弹出窗口时,它将以新值打开,python,python-3.x,kivy,kivy-language,Python,Python 3.x,Kivy,Kivy Language,我想在弹出窗口中更改类的一些按钮标签,并在重新打开弹出窗口后保留新标签。如果你运行我的应用程序,你可以看到在按下“Press me”(按我)按钮后,会出现一个带有标签“Default”(默认)的弹出窗口,按下该按钮后,标签会变为“New”(新建)。我希望能够关闭弹出窗口,按下“press me”(按我)按钮,并在弹出窗口中看到标签为“New”(新建)的按钮 我的.py文件 from kivy.uix.floatlayout import FloatLayout from kivy.core.wi

我想在弹出窗口中更改类的一些按钮标签,并在重新打开弹出窗口后保留新标签。如果你运行我的应用程序,你可以看到在按下“Press me”(按我)按钮后,会出现一个带有标签“Default”(默认)的弹出窗口,按下该按钮后,标签会变为“New”(新建)。我希望能够关闭弹出窗口,按下“press me”(按我)按钮,并在弹出窗口中看到标签为“New”(新建)的按钮

我的.py文件

from kivy.uix.floatlayout import FloatLayout
from kivy.core.window import Window
from kivy.uix.popup import Popup
from kivy.app import App
from kivy.uix.widget import Widget

import time

Window.clearcolor = (1, 1, 1, 1)
Window.size = (800, 480)

class MyGrid(Widget):
    def btn(self):
        show_popup(T, "Window")


class T(FloatLayout):
    pass

def show_popup(tab, name): 
    show = tab()
    popupWindow = Popup(title = name, content = show, size_hint = (None,None), size = (800,384), auto_dismiss = True)
    popupWindow.open()
    return popupWindow

class TimeApp(App):
    def build(self):
        return MyGrid()



if __name__ == "__main__":
    TimeApp().run()
我的.kv文件

<MyGrid>    
    Button:
        text: "Press me"
        on_press: root.btn()


<T>:
    Button:
        pos_hint: {"center_x": 0.5, "center_y": 0.5}
        text: "Default"
        on_press: self.text = "New"

按钮:
文字:“按我”
按:root.btn()
:
按钮:
pos_提示:{“center_x”:0.5,“center_y”:0.5}
文本:“默认值”
按:self.text=“新建”

一种方法是保留对弹出窗口的引用。
py
侧:

Window.clearcolor=(1,1,1,1)
Window.size=(800480)
类MyGrid(小部件):
定义初始(自我,**kwargs):
超级(MyGrid,self)。\uuuuu初始化(**kwargs)
self.popupWindow=Popup(content=T(),size\u hint=(无,无),
大小=(800384),自动消除=真)
def btn(自身):
self.show_弹出窗口(“窗口”)
def show_弹出窗口(自身、名称):
self.popupWindow.title=名称
self.popupWindow.open()
T类(浮动布局):
通过
类时间应用程序(应用程序):
def生成(自):
返回MyGrid()
如果名称=“\uuuuu main\uuuuuuuu”:
TimeApp().run()

一种方法是保留对弹出窗口的引用。
py
侧:

Window.clearcolor=(1,1,1,1)
Window.size=(800480)
类MyGrid(小部件):
定义初始(自我,**kwargs):
超级(MyGrid,self)。\uuuuu初始化(**kwargs)
self.popupWindow=Popup(content=T(),size\u hint=(无,无),
大小=(800384),自动消除=真)
def btn(自身):
self.show_弹出窗口(“窗口”)
def show_弹出窗口(自身、名称):
self.popupWindow.title=名称
self.popupWindow.open()
T类(浮动布局):
通过
类时间应用程序(应用程序):
def生成(自):
返回MyGrid()
如果名称=“\uuuuu main\uuuuuuuu”:
TimeApp().run()