2014-03-31 83 views
1

我是新來的Python,我試圖編寫一個程序,顯示一個8x8網格。垂直線應該是紅色的,水平線應該是藍色的。但我似乎無法弄清楚。我知道它必須在一個循環中,但我不知道從哪裏開始。請幫忙!Python的GUI和TKinter網格

這裏是我到目前爲止的代碼:

從Tkinter的進口*

class Canvas: 
def __init__(self): 
    self.window = Tk() 
    self.window.title("Grid") 

    self.canvas = Canvas(window, width = 200, height = 200, 
         bg = "white") 
    self.canvas.pack() 

def drawGrid(self): 
    self.canvas.create_line() 

謝謝!

回答

0

有關create_line()方法的詳細信息,請參見http://effbot.org/tkinterbook/canvas.htm#Tkinter.Canvas.create_line-method

您需要兩個參數:行的座標和填充顏色。座標是[x0, y0, x1, y1]列表,以及它們對應的像素值與父窗口部件的左上角的原點,所以要畫一條水平線綠線在你的200x200的Canvas,你會寫:

self.canvas.create_line(0,0,200,200, fill='green') 

要創建線條網格,可以使用for或while循環,該循環會在每次迭代中修改座標列表,並在每個循環結束時將其傳遞給新的create_line()函數。

這應該讓你開始。

+0

由於某些原因,當我輸入self.canvas.create_line(0,0,200,200,fill =「blue」,tags =「line」)時,它不會在畫布上繪製它。我究竟做錯了什麼? – user3105664