2016-06-24 7 views
-1

次のコードが円でグラフィックスウィンドウを作成しない理由はわかりません。実行時にオブジェクトは作成されますが、グラフィカルには作成されませんSomeObject = Tracker()pythonクラスのオブジェクトがグラフィックスウィンドウを描画していません

なぜですか?これはコードの簡単なスニペットです。私がなぜグラフィックスウィンドウを表示しないのかを理解するためです。

# tracker.py 
from graphics import * 

class Tracker: 

    def __inti__(self): 

     self.win = GraphWin('tracker', 500, 500) 
     self.circle = Circle(Point(0, 0), 0.5) 
     self.circle.draw(self.win) 
+2

であり、それは '__init__'であるべきです。 – lightalchemist

+0

inti ........ heh – AK47

+0

オススメして申し訳ありませんが、メモリ内にオブジェクトを作成しただけで実際に描画していないという事実は変わりませんでした。私はそれを変更し、それと遊んだ。さらに、中心に(0、0)を置いた座標系を設定し、ウィンドウも描画しませんでした。 – lhoernle

答えて

0

ので、あなたがあなたのサークルを見ることができない。自分のサークル(0.5)の半径は

  • 小さすぎる

    1. あなたは(0、0)で、この小さな円の中央を置いこれは左上隅にあります
    2. クラスのイニシャライザのスペルが間違っていますinti、したがって、オブジェクトを作成したときにコードが呼び出されませんでした。ここで

    動作するコードです:

    graphics.pyはおそらくこのlinkから取られ
    from graphics import * 
    
    class Tracker: 
    
        def __init__(self): 
         # Window of size 500 x 500 
         self.win = GraphWin('tracker', 500, 500) 
         # Circle of radius 10 centered at (250, 250)    
         self.circle = Circle(Point(250, 250), 10)           
         self.circle.draw(self.win) 
         self.win.getMouse() # Pause to view result 
         self.win.close() 
    
    
    def main(): 
        tracker = Tracker() 
    
    
    if __name__ == "__main__": 
        main() 
    

    上記のリンクからサンプルコードを修正しました(これはおそらくあなたもやったことです)、getMouse()を呼び出してウィンドウを周りに保つようにしました。

    結果が1の場合

    this window

  • +0

    ありがとうございます。私は0.5の中心を(0、0)にしたときに座標系(self.win.setCoords(-10、-10、10、10))を設定しました。私はそれを追加することを忘れてstackoverflowにそれを入力したとき。私は今働いている。再度、感謝します。 – lhoernle

    関連する問題