2017-02-04 246 views
2

在python,tkinter中,我試圖製作一個包含在畫布上創建圖形的遊戲。例如,我想要一個紅色矩形出現在我的畫布圖像上。當我執行我的代碼時,您看到的矩形大小約爲1像素,我不知道爲什麼以及如何得到這樣的結果。這裏是我的代碼:創建矩形的Python Tkinter畫布

from tkinter import * 
root = Tk() 
root.geometry("500x900") 
canvas = Canvas(root, width=550, height=820) 
canvas.pack() 
png = PhotoImage(file = r'example.png') # Just an example 
canvas.create_image(0, 0, image = png, anchor = "nw") 

a = canvas.create_rectangle(50, 0, 50, 0, fill='red') 
canvas.move(a, 20, 20) 

希望這可以解決。感謝您的時間:)

回答

5

create_rectangle方法需要4個座標: canvas.create_rectangle(x1, y1, x2, y2, **kwargs),與(X1,Y1)的左上角的座標和(x2,y2)的那些右下角的。但是你給出了相同座標的兩倍,所以你的矩形的寬度和高度都爲零,這就是爲什麼你只能看到一個像素。試用canvas.create_rectangle(50, 0, 100, 50, fill='red'),這次你應該得到50個像素的正方形。

您可以在此website上獲得更多關於create_rectangle的參數的詳細信息。