2017-05-26 19 views
0

イメージを楕円ウィジェットの中心にするにはどうすればいいですか?Kivy - 楕円ウィジェット内の中心画像

以下は、.pyと.kvファイルとそのコードを実行した結果の画面です。

私はすでにさまざまな方法で試してきましたが、できません。誰かが私にこの問題を解決する手助けをすることができますか

fab.py

from kivy.app import App 
from kivy.uix.widget import Widget 
from kivy.core.window import Window 
Window.clearcolor = (1, 1, 1, 1) 

class Fab(App): 
    pass 

Fab().run() 

fab.kv

Widget: 
    canvas: 
     Color: 
      rgba: 0, 1, 0, 1 
     Ellipse: 
      pos: self.pos 
      size: (dp(48), dp(48)) 
    Scatter: 
     rotation: 45 
     Image: 
      source: 'plus.png' 
      size: 64,64 

enter image description here

答えて

1

あなたがいるのでそう、この単純なことを行うことは困難である理由の一つであります特定のウィジェットを使用して形状を保持しないでください。ウィジェットのcenter_x属性とcenter_y属性を使用できるので、実際に行うことをお勧めします。だから、あなたの形状が欲しいと同じ大きさと位置でウィジェットを作って、ウィジェット自体を動かしてください。お守り:

Widget: 
    Widget: # create a specific widget for the ellipse 
     id: ellipse # give an id so we can refer to this widget 
     size: (dp(48), dp(48)) 
     canvas: 
      Color: 
       rgba: 0, 1, 0, 1 
      Ellipse: 
      pos: self.pos 
      size: self.size 

    Scatter: 
     size: (dp(48), dp(48)) 
     rotation: 45 
     center_x: ellipse.center_x # refer to the ellipse 
     center_y: ellipse.center_y 
     Image: 
      source: 'plus.png' 

あなたが本当にあなたのイメージを回転が必要な場合は、それが散布を使用するのに最適な考えではありません(あなたには、例えば、離れた楕円からプラスをドラッグすることもできます)。 thisスレッドを検討してください。

+0

Edvardas Dlugauskasあなたの助けてくれてありがとう!!!! – rafaelcb21

+0

申し訳ありませんが、私は1つの事実を見落としました。コードを見てください、今はちょっと違います。 –