2016-06-25 3 views
0

純粋なPythonコードを使用して整列を把握できないようです。私は、rootを参照してリレーショナルアライメントを取得することを理解しています。しかし、私はそれを働かせることができませんでした。このコードは、コンパイル、実行、およびボタンを左下隅に配置します。 0,0の座標で。私はここで何が欠けていますか?純粋なPythonを使用してKivyオブジェクトを整列する

class ContainerView(FloatLayout): 
    def __init__(self, **kwargs): 
     super(ContainerView, self).__init__(**kwargs) 

    def build(self): 
     new = Button() 
     new.text = "username" 
     new.size = (50,50) 
     new.color = [3/255,50/255,155/255,1] 
     new.size_hint = [0.5,0.5] 
     new.center = self.center ###This line 
     self.add_widget(new) 


class ScoreboardApp(App): 
    def build(self): 
     cView = ContainerView() 
     cView.build() 
     return cView 

更新:

私は、ウィンドウのサイズを設定し、その後.kvファイルの作品に合わせて、私は完全に理由を知っているかわからないことがわかった試行錯誤の束の後。コンソールにウィンドウサイズを記録すると、コンピュータの実際のサイズがわかります。

main.py:

from kivy.core.window import Window 

### Set window size 
Window.size = (1440, 800) 

### Set size_hint in draw function 
class ClientScoreboard(GridLayout): 
    containerView = ContainerView() 
    numberOfRows = 0 
    numberOfColumns = 0 

    def buildClientScoreboard(self): 
     self.cols = self.numberOfColumns 
     self.rows = self.numberOfRows 
     self.size_hint = (0.75, 0.85) 

.kv

<ContainerView> 
    ClientScoreboard: 
     id: client_scoreboard 
     x: 375 
     y: self.parent.height - self.height - 25.0 

私はそれが中心点としてFloatLayoutを参照するとは何かを持っている疑いがあります。

+0

ボタンにはどのように調整しますか? – syntonym

+0

センター...彼が###この行に入れた線を見てください –

答えて

0

それは(あなたのfloatlayout)...ウィンドウサイズを知らないので、デフォルトのサイズ(100100)を使用しています...そう、それは

があなたのフロートレイアウトにその大きさを語ってみてくださいそこにボタンを中心

cView = ContainerView(size=(500,350)) 
+0

私もそう思っていましたが、実際のウィンドウを参照する必要があるようです。 –

関連する問題