キャンバスにキューを使用してシェイプを追加する方法が混乱しました。私は三角形を追加しようとしています。これは私が持っているコードです。エラーが発生しました>>> AttributeError: 'Queue'オブジェクトに「エンキュー」属性がありませんキューを使用してキャンバスにシェイプを追加する
私はこれをしばらく試してきましたが、私は正しい考えを持っていると思っています。
from tkinter import *
import random
root = Tk()
from queue import *
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def size(self):
return len(self.items)
def enqueue(self, item):
self.items.insert(0, item)
def dequeue(self):
return self.items.pop(0)
def peek(self):
return self.items[0]
class Recta():
def __init__(self, height=60, width=80):
self.queue = Queue()
def create_buttons(self):
self.button5 = Button(self.frame, text = "Add Arc", command = self.random_arc)
self.button5.pack(side = 'left')
def random_arc(self):
w = random.randrange(45)
h = random.randrange(90)
self.queue.enqueue(self.canvas.create_arc(0,w,h,fill= "green"))
tes = Recta()
tes = Queue()
root.mainloop()
これらのパラメータxとy:それらは本当にwとhではありませんか? – rocksteady
ええ、彼らは混乱のためにごめんなさい申し訳ありません –
あなたのケースでは "create_arc"はcreate_arc(0,0、w、h、fill = "green")のように呼び出されます。 :エラー>>> _tkinter.TclError:間違った#座標:0または4が予想され、3が返されました – rocksteady