5

まず第一に、それらがシステムの違いである場合、現在のKivyバージョンを使用してUbuntu 12.04で作業しています。私の問題は、レイアウト サイズを設定できないことです。

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout

class TestApp(App):
    def build(self):
        layout = BoxLayout(orientation='vertical', size=(200,200))
        btn1 = Button(text='Hello', size=(50,50), size_hint=(None, None))
        btn2 = Button(text='World', size=(50,50), size_hint=(None, None))
        layout.add_widget(btn1)
        layout.add_widget(btn2)
        return layout
TestApp().run()

何か案が?

4

1 に答える 1

7

ルート ウィジェットは常にウィンドウのサイズになります。コードを次のように変更できます。

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.floatlayout import FloatLayout

class TestApp(App):
    def build(self):
        root = FloatLayout()
        layout = BoxLayout(orientation='vertical', size=(200,200), size_hint=(None, None))
        btn1 = Button(text='Hello', size=(50,50), size_hint=(None, None))
        btn2 = Button(text='World', size=(50,50), size_hint=(None, None))
        layout.add_widget(btn1)
        layout.add_widget(btn2)
        root.add_widget(layout)
        return root
TestApp().run()

しかし、boxlayout を使用して、すべての子にカスタム サイズを使用するのは少し奇妙に思えます。

于 2012-09-03T21:41:48.803 に答える