【发布时间】:2014-12-14 03:51:39
【问题描述】:
我很难弄清楚如何在我的 python 代码上实例化我使用 kv lang 创建的动态类,请考虑以下代码:
我的 test.kv 文件如下所示:
<MyPopup@Popup>:
title:'hello'
size_hint:(1, .6)
GridLayout:
id:root_grid
cols:2
padding:['8dp', '4dp','8dp','4dp']
spacing:'8dp'
Label:
text:'some text here'
Button:
text:'Ok'
on_press:do_something()
<MyGrid>:
rows:1
Button:
text:'Show Popup'
on_press:root.pop.show()
然后在我的 test.py 中:
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.popup import Popup
from kivy.factory import Factory
class MyGrid(GridLayout):
pop = Factory.MyPopup()
pass
class Test(App):
def build(self):
return MyGrid()
if __name__=='__main__':
Test().run()
我得到以下错误:raise FactoryException('Unkown class ' % name) kivy.factory.FactoryException: Unkown class
有人可以解释一下如何正确地做到这一点,我错过了什么?如果您需要更多信息,请告诉我。谢谢。
【问题讨论】:
标签: python class instance kivy