[英]Python with tkinter, problems with the line drawing between buttons
我目前正在學習Python,並開始使用ktinter。 我現在的目標是創建一個拖放功能,該功能創建按鈕並將它們與線連接。
這是我到目前為止的內容:
from tkinter import *
class Test:
def __init__(self, master):
X1 = int(input())
Y1 = int(input())
X2 = int(input())
Y2 = int(input())
self.blackLine = Canvas.create_line(X1, Y1, X2, Y2)
convas = Canvas(master)
convas.pack()
button1 = Button(text = "button 1")
button1.configure(width = 0, activebackground = "#D2D2D2", relief = GROOVE)
button1_window = convas.create_window(X1, Y1, anchor=NW, window=button1)
button1.update()
print (button1.winfo_geometry())
button2 = Button(text = "button 2")
button2.configure(width = 0, activebackground = "#D2D2D2", relief = GROOVE)
button2_window = convas.create_window(X2, Y2, anchor=NW, window=button2)
button2.update()
print (button2.winfo_geometry())
現在,您可能已經看到,我正在測試線條圖,方法是在開始時在整數中輸入一些值,而不是在button1,2_window坐標中使用它們在畫布上放置按鈕。 現在,當我啟動程序時,我的問題就出現了。
一旦我輸入了4、4、10、10之類的4個數字,就會給我一個AttribuiteError提示:
“ AttributeError:'int'對象沒有屬性'_create'”
我不確定,但我猜想它會以某種方式將數字用作字符串,因此我嘗試使用int(input))而不是常規的input()函數。
問候
您需要使用canvas實例而不是Canvas類來制作線條。 為此,必須在Canvas初始化后將其移動。
convas = Canvas(master)
convas.pack()
self.blackLine = convas.create_line(X1, Y1, X2, Y2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.