Dieser Code gibt die aktuellen X-Y-Koordinaten, RGB-Werte und HEX-Werte des Mauszeigers an. Die Koordinaten und RGB-Werte sind korrekt, aber nach einiger Zeit ergeben die Hex-Werte das falsche Ergebnis.Fehler beim Zurückgeben von HEX-Werten im Python-Code des Mauszeigers
import pyautogui
import time
def print_no_newline(string):
import sys
sys.stdout.write("\r")
sys.stdout.write(string)
sys.stdout.flush()
try:
while True:
x, y = pyautogui.position()
pixelColor = pyautogui.screenshot().getpixel((x, y))
ss = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
r = int(str(pixelColor[0]).rjust(3))
g = int(str(pixelColor[1]).rjust(3))
b = int(str(pixelColor[2]).rjust(3))
hex = "#{:02x}{:02x}{:02x}".format(r,g,b)
hexstr=str(hex)
res= ss + ' RGB: ('+ str(r) +','+ str(g) +','+ str(b) +') '+ 'HEX: '+
hexstr
print_no_newline(res)
time.sleep(1.0)
except KeyboardInterrupt:
print("\nDone...")
ich später sogar versucht, die hexstr Clip ersten 6 Zeichen von Hex zurückzukehren
res= ss + ' RGB: ('+ str(r) +','+ str(g) +','+ str(b) +') '+ 'HEX: '+
hexstr[:7]
verwenden, aber es hat nicht
Musterausgänge
X arbeiten: 489 Y: 622 RGB: (0,2,130) HEX: # 000282eff
X: 545 Y: 710 RGB: (0,0,0) HEX: # 000000f1f1f1
Gibt es die Müllwerte von der vorherigen Position zurück?