2016-07-23 6 views
0

私はkivy 1.9.1を使用してカードゲームを構築しています。私は、ルートウィンドウのサイズに比べて、size_hintを使ってカードが正しく表示されていなければなりませんでした。カードクラスはイメージクラスから継承され、素晴らしい仕事をしました。私はカードをクリック可能にする必要があることに気がついたので、代わりにクラスをボタンクラスから継承するように変更しました。何らかの理由で、これは画像と同じサイズではありませんでした。背景の.pngファイルが歪んだ。助けてください。これは私をナットにしている。私は一般的にこの問題を避けるためにsize_hintをオフにしていますが、私はルートウィンドウのサイズに基づいてすべてのスケーリングが必要です。 kivy.uix.behaviorsからkivyでは、size_hintが画像とボタンの動作が異なるのはなぜですか?

ButtonBehaviorをインポート

ScreenManagement: 
    CardTableScreen: 
<Card>: 
    size_hint: (.25, .25) 
    pos_hint: ({'left': .05}) 
<CardTableScreen>: 
    name: 'cardTable' 

    Card: 
     name: 'card0' 
     id: card0 
     pos: (self.width *.20 , root.height/2) 
    Card: 
     name: 'card1' 
     id: card1 
     pos: (self.width * .75, root.height/2) 
    Card: 
     name: 'card2' 
     id: card2 
     pos: (self.width * 1.30 , root.height/2) 
    Card: 
     name: 'card3' 
     id: card3 
     pos: (self.width * 1.85, root.height/2) 
    Card: 
     name: 'card4' 
     id: card4 
     pos: (self.width * 2.40, root.height/2) 
    Label: 
     name: 'handType' 
     id: handType 
     pos: (-(card0.width *.125), root.height * .30) 
     font_size: '18sp' 

<Layout>: 
    orientation: 'vertical' 
    canvas.before: 
     Color: 
      rgba: 0,.25,0,1 
     Rectangle: 
      pos: self.pos 
      size: self.size 

のpython:そうは次のように

from kivy.uix.button import Button 
class(Button): pass 
+0

このコミュニティのコードを共有して、[最小限で完全で検証可能な例を作成する方法](http://stackoverflow.com/help/mcve)のガイドラインに従ってください。 –

答えて

0

が判明し、解決策は、画像クラスとボタンの動作クラスから継承することです kivy.uix.imageから画像をインポート

クラスカード(ButtonBehavior、Image):パス

関連する問題