diff --git a/map.py b/map.py index a0e95ed..95f7b0f 100644 --- a/map.py +++ b/map.py @@ -7,45 +7,63 @@ import tkinter as tk url = "https://pb.gulyaipole.fun/" root = tk.Tk() +root.geometry("1280x720") + +# Canvas for image canvas = tk.Canvas(root) canvas.pack() -root.geometry("1280x720") -ttext = tk.Canvas(root, width=90, height=20, bg="black") +# XY cords +ttext = tk.Canvas(root, width=100, height=20, bg="black") ttext.place(x=1180, y=0) -text = ttext.create_text(40, 10, text="X: 1, Y: 1", fill="white") +text = ttext.create_text(50, 10, text="X: 1, Y: 1", fill="white") -while True: - x = root.winfo_pointerx() - root.winfo_rootx() - y = 720 - (root.winfo_pointery() - root.winfo_rooty()) - ttext.itemconfig(text, text=f"X: {x}, Y: {y}") +# Run threads +from threading import Thread +from time import sleep - # Открываем URL как файл - image_file = io.BytesIO(urllib.request.urlopen(url).read()) +def cords_up(): + while True: + x = root.winfo_pointerx() - root.winfo_rootx() + y = 720 - (root.winfo_pointery() - root.winfo_rooty()) + ttext.itemconfig(text, text=f"X: {x}, Y: {y}") + sleep(0.05) - # Открываем изображение в PIL - img = Image.open(image_file) +cords = Thread(target=cords_up) +cords.start() - # Преобразуем изображение в формат, поддерживаемый Tkinter - tk_img = ImageTk.PhotoImage(img) +def image_up(): + global canvas_old, canvas - # Создаем новый Canvas для вывода изображения - canvas = tk.Canvas(root, width=img.size[0], height=img.size[1]) - canvas.create_image(0, 0, anchor="nw", image=tk_img) - #canvas.pack() - canvas.place(x=0, y=0) + while True: + # Prepare image for tkiner + image_file = io.BytesIO(urllib.request.urlopen(url).read()) + img = Image.open(image_file) + tk_img = ImageTk.PhotoImage(img) - try: - canvas_old.destroy() - except: - pass + # Create new canvas + canvas = tk.Canvas(root, width=img.size[0], height=img.size[1]) + canvas.create_image(0, 0, anchor="nw", image=tk_img) + canvas.place(x=0, y=0) + + try: + # New canvas and cords up + tk.Misc.lift(canvas) + tk.Misc.lift(ttext) + # Update + root.update() + sleep(2) + # Remove ols + canvas_old.destroy() + except: + pass + # New canvas now is old + canvas_old = canvas + +image = Thread(target=image_up) +image.start() - canvas_old = canvas - tk.Misc.lift(ttext) - # Обновляем окно - root.update() - time.sleep(0.1) root.mainloop() -# +