-
Notifications
You must be signed in to change notification settings - Fork 41
/
Copy pathmain.py
54 lines (37 loc) · 2.05 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = "ipetrash"
# SOURCE: https://habrahabr.ru/post/346146/
import time
# pip install pyautogui
import pyautogui
from graphics import GraphWin, Circle, Point, Entry, color_rgb
# Создаем графическую форму размером 200х200 и элементы на ней
win = GraphWin(
"pipetka", 200, 200, autoflush=True
)
x, y = pyautogui.position() # получаем в x, y координаты мыши
r, g, b = pyautogui.pixel(x, y) # получаем в r, g, b цвет
ColorDot = Circle(Point(100, 100), 25) # создаем точку, отображающую цвет
# Устанавливает ей заливку из ранее полученных цветов
ColorDot.setFill(
color_rgb(r, g, b)
)
ColorDot.draw(win) # рисуем на форме win
RGBtext = Entry(Point(win.getWidth() / 2, 25), 10) # создаем RGB вывод
RGBtext.draw(win) # рисуем на форме win
RGBstring = Entry(Point(win.getWidth() / 2, 45), 10) # создаем вывод цвета в web стиле
RGBstring.draw(win) # рисуем на форме win
Coordstring = Entry(Point(win.getWidth() / 2, 185), 10) # создаем отображение координат
Coordstring.draw(win) # рисуем на форме win
while True: # цикл перереисовки формы
time.sleep(0.1) # задержка в 0.1 с, чтобы питон не сходил с ума
x, y = pyautogui.position() # получаем в x, y координаты мыши
r, g, b = pyautogui.pixel(x, y) # получаем в r, g, b цвет
ColorDot.setFill(color_rgb(r, g, b)) # Обновляем цвет
RGBtext.setText(pyautogui.pixel(x, y)) # Обновляем RGB
RGBstring.setText(color_rgb(r, g, b)) # Обновляем web цвет
Coordstring.setText(f"{x} x {y}") # Обновляем координаты
if win.isClosed():
break
win.flush() # Даем команду на перерисовку формы