Python 2.7 如何访问Kivy文件中的全局变量?

Python 2.7 如何访问Kivy文件中的全局变量?,python-2.7,kivy,Python 2.7,Kivy,我有一个名为Tiles的全局变量,希望将网格类中的col数设置为kivy文件 Main.py Tiles = 5 class TreasureHuntGrid(GridLayout): global Tiles .kv : 科尔斯:不知道我应该在这里放什么 。如果您想从任何小部件访问变量,最好将其放入应用程序类中,因为您的程序中只有一个实例: from kivy.app import App from kivy.uix.gridlayout import GridLayout from

我有一个名为Tiles的全局变量,希望将网格类中的col数设置为kivy文件

Main.py

Tiles = 5
class TreasureHuntGrid(GridLayout):
    global Tiles
.kv

:
科尔斯:不知道我应该在这里放什么
。如果您想从任何小部件访问变量,最好将其放入
应用程序
类中,因为您的程序中只有一个实例:

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.lang import Builder

Builder.load_string("""
<MyWidget>:
    cols: app.tiles
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
""")

class MyWidget(GridLayout):
    pass

class MyApp(App):
    tiles = 5
    def build(self):
        return MyWidget()

if __name__ == '__main__':
    MyApp().run()
从kivy.app导入应用
从kivy.uix.gridlayout导入gridlayout
从kivy.lang导入生成器
生成器。加载\u字符串(“”)
:
cols:app.tiles
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
""")
类MyWidget(GridLayout):
通过
类别MyApp(应用程序):
瓷砖=5
def生成(自):
返回MyWidget()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
MyApp().run()
话虽如此,如果您确实需要,您可以访问如下全局变量:

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.lang import Builder

tiles = 5

Builder.load_string("""
#: import tiles __main__.tiles

<MyWidget>:
    cols: tiles
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
""")

class MyWidget(GridLayout):
    pass

class MyApp(App):
    def build(self):
        return MyWidget()

if __name__ == '__main__':
    MyApp().run()
从kivy.app导入应用
从kivy.uix.gridlayout导入gridlayout
从kivy.lang导入生成器
瓷砖=5
生成器。加载\u字符串(“”)
#:导入分幅\uuuu主\uuuuu.tiles
:
科尔斯:瓷砖
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
""")
类MyWidget(GridLayout):
通过
类别MyApp(应用程序):
def生成(自):
返回MyWidget()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
MyApp().run()
。如果您想从任何小部件访问变量,最好将其放入
应用程序
类中,因为您的程序中只有一个实例:

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.lang import Builder

Builder.load_string("""
<MyWidget>:
    cols: app.tiles
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
""")

class MyWidget(GridLayout):
    pass

class MyApp(App):
    tiles = 5
    def build(self):
        return MyWidget()

if __name__ == '__main__':
    MyApp().run()
从kivy.app导入应用
从kivy.uix.gridlayout导入gridlayout
从kivy.lang导入生成器
生成器。加载\u字符串(“”)
:
cols:app.tiles
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
""")
类MyWidget(GridLayout):
通过
类别MyApp(应用程序):
瓷砖=5
def生成(自):
返回MyWidget()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
MyApp().run()
话虽如此,如果您确实需要,您可以访问如下全局变量:

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.lang import Builder

tiles = 5

Builder.load_string("""
#: import tiles __main__.tiles

<MyWidget>:
    cols: tiles
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
    Label:
        text: "test"
""")

class MyWidget(GridLayout):
    pass

class MyApp(App):
    def build(self):
        return MyWidget()

if __name__ == '__main__':
    MyApp().run()
从kivy.app导入应用
从kivy.uix.gridlayout导入gridlayout
从kivy.lang导入生成器
瓷砖=5
生成器。加载\u字符串(“”)
#:导入分幅\uuuu主\uuuuu.tiles
:
科尔斯:瓷砖
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
标签:
文本:“测试”
""")
类MyWidget(GridLayout):
通过
类别MyApp(应用程序):
def生成(自):
返回MyWidget()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
MyApp().run()