2012-06-30 110 views
2

我想在我的kivy程序中使用简单的网格布局,但我不适合使用示例;如何在Kivy中使用GridLayout?

这里是我的代码:

import kivy 
from kivy.uix.gridlayout import GridLayout 
from kivy.app import App 
from kivy.uix.button import Button 

layout = GridLayout(cols=2, row_force_default=True, row_default_height=40) 
layout.add_widget(Button(text='Hello 1', size_hint_x=None, width=100)) 
layout.add_widget(Button(text='World 1')) 
layout.add_widget(Button(text='Hello 2', size_hint_x=None, width=100)) 
layout.add_widget(Button(text='World 2')) 

raw_input() 

最后我看不到任何结果(只是单一的白色窗口,没有任何电网)

感谢您的关注

+4

您没有将答案标记为已接受或回答任何问题,请给出一些反馈! – Tshirtman

回答

9

你错过了创造初始应用程序类,并运行它:

import kivy 
from kivy.uix.gridlayout import GridLayout 
from kivy.app import App 
from kivy.uix.button import Button 

class MyApp(App): 
    def build(self): 
     layout = GridLayout(cols=2, row_force_default=True, row_default_height=40) 
     layout.add_widget(Button(text='Hello 1', size_hint_x=None, width=100)) 
     layout.add_widget(Button(text='World 1')) 
     layout.add_widget(Button(text='Hello 2', size_hint_x=None, width=100)) 
     layout.add_widget(Button(text='World 2')) 
     return layout 

MyApp().run() 

如果您使用raw_input(),您将brea k应用程序循环。如果你想做交互式编码,看看kivy.interactive模块。