Я создал класс под названием Player в файле Player.py. Класс создает прямоугольник при вызове, и я пытаюсь использовать Canvas.move, используя созданный объект в моем файле Main.py. Поэтому я создал объект как player1 = player.player (). Я прохожу в координатах и цвете, и объект создается просто отлично, но когда я пытаюсь использовать метод движения от игрока, он говорит, что Canvas не находится в движении. И ничего не примет. < /P>
from player import *
from tkinter import *
colors = ["blue","red","yellow","purple","black","gray"]
positions = [(10,20,30,40),(100,110,120,130),(200,210,220,230),(300,310,320,330),(400,410,420,430)]
other_positions = [(600,610,620,630),(700,710,720,730),(800,810,820,830),(900,910,920,930),(1000,1010,1020,1030)]
xx, yy = 0, 0
window = Tk()
canvas = Canvas(width=1200,height=1000,bg="green")
canvas.pack()
text = 10
xx,yy = 0,0
player1 = Player()
player1.player(canvas,10,20,30,50,colors[4])
plays = canvas.bbox(player1)
#player1.moved(player1,100,200)
canvas.move(player1,500,500)
from tkinter import *
from PIL import Image,ImageTk
import random
from tkinter import ttk
from pynput.mouse import Button, Controller,Listener
class Player:
def __init__(self):
# self.color = self.colors[c]
# self.positon = self.positions[p]
self.x = 0
self.y = 0
def on_click(selfx,y,button,pressed):
def on_click(x, y, button, pressed):
global xx, yy
xx, yy = x, y
print('{0} at {1}'.format(
'Pressed' if pressed else 'Released',
(x, y)))
if not pressed:
# Stop listener
return False
with Listener(on_click=on_click) as listener:
listener.join()
# here you can read xx and yy
def player(self,canvas,x,y,xx,yy,color):
canvas.create_rectangle(x,y,xx,yy,fill=color)
def moved(self,x,y):
canvas.move(player,x,y)
def position(self, pynput=None):
# with Listener(on_click=self.on_click) as listener:
#listener.join()
mouse = Controller()
< /code>
Я пытался использовать Self.canvas и пытался использовать переменную в качестве координат, но не повезло. Если я создаю функцию в main.py, чтобы создать прямоугольник и переместить ее, это нормально.
Подробнее здесь: https://stackoverflow.com/questions/797 ... ther-class
Использование метода перемещения из Canvas на объекте, созданном из другого класса ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Использование метода перемещения из Canvas на объекте, созданном из другого класса
Anonymous » » в форуме Python - 0 Ответы
- 3 Просмотры
-
Последнее сообщение Anonymous
-