Você está na página 1de 2

import tkinter as tk

import pyautogui
import pygetwindow as gw

# Variáveis para controlar o movimento do quadrado


is_mouse_pressed = False
mouse_start_x, mouse_start_y = 0, 0
window_start_x, window_start_y = 0, 0

# Função para obter a cor do pixel na posição x, y


def get_pixel_color(x, y):
return pyautogui.pixel(x, y)

# Função para atualizar a janela transparente


def atualizar_janela(event):
x, y = event.x_root, event.y_root # Coordenadas globais do mouse
cor_pixel = get_pixel_color(x, y)
cor_hexadecimal = "#{:02X}{:02X}{:02X}".format(cor_pixel[0], cor_pixel[1],
cor_pixel[2])
janela.config(bg=cor_hexadecimal) # Define a cor de fundo da janela com base
no pixel capturado

# Função para iniciar o movimento do quadrado


def iniciar_movimento(event):
global is_mouse_pressed, mouse_start_x, mouse_start_y, window_start_x,
window_start_y
is_mouse_pressed = True
mouse_start_x, mouse_start_y = event.x_root, event.y_root
window_start_x, window_start_y = janela.winfo_x(), janela.winfo_y()

# Função para mover o quadrado


def mover_quadrado(event):
if is_mouse_pressed:
x, y = event.x_root, event.y_root
dx, dy = x - mouse_start_x, y - mouse_start_y
new_x, new_y = window_start_x + dx, window_start_y + dy
janela.geometry(f"+{new_x}+{new_y}")

# Função para encerrar o movimento do quadrado


def encerrar_movimento(event):
global is_mouse_pressed
is_mouse_pressed = False

# Configuração da janela transparente


janela = tk.Tk()
janela.title("Janela Transparente")
janela.attributes("-topmost", True) # Mantém a janela sempre no topo
janela.attributes("-alpha", 0.7) # Define a transparência da janela (0.0 a 1.0)

# Tamanho do quadrado
lado = 200

# Encontre a janela ativa do Google Chrome


janela_chrome = gw.getWindowsWithTitle("Google Chrome")[0]

# Obtenha as dimensões da janela do Chrome


largura_chrome = janela_chrome.width
altura_chrome = janela_chrome.height
# Determine as coordenadas para centralizar o quadrado sobre o Chrome
x = janela_chrome.left + (largura_chrome - lado) // 2
y = janela_chrome.top + (altura_chrome - lado) // 2

# Defina a geometria do quadrado para centralizá-lo sobre o Chrome


janela.geometry(f"{lado}x{lado}+{x}+{y}")

# Associe as funções de movimento ao evento do mouse


janela.bind("<ButtonPress-1>", iniciar_movimento)
janela.bind("<B1-Motion>", mover_quadrado)
janela.bind("<ButtonRelease-1>", encerrar_movimento)

# Crie um canvas no centro do quadrado


canvas = tk.Canvas(janela, bg="white", bd=0, highlightthickness=0)
canvas.pack(fill=tk.BOTH, expand=True)

# Desenhe uma linha horizontal vermelha no centro do quadrado


canvas.create_line(0, lado // 2, lado, lado // 2, fill="red", width=2)

# Desenhe uma linha vertical vermelha no centro do quadrado


canvas.create_line(lado // 2, 0, lado // 2, lado, fill="red", width=2)

janela.mainloop()

Você também pode gostar