1
0
Fork 0
color-pick/main.go

31 lines
742 B
Go

package main
import (
"fmt"
"github.com/go-vgo/robotgo"
"github.com/lxn/win"
"os"
"os/signal"
"yumc.pw/desktop/color-pick/hot_key"
)
func main() {
quit := make(chan os.Signal)
signal.Notify(quit, os.Interrupt, os.Kill)
_, _ = hot_key.RegisterHotKey(hot_key.ModCtrl, 'S', func() {
hWnd := win.GetForegroundWindow()
rect := &win.RECT{}
win.GetWindowRect(hWnd, rect)
point := &win.POINT{}
win.GetCursorPos(point)
color := robotgo.GetPixelColor(int(point.X-1), int(point.Y-1))
rectX, rectY := int(point.X-rect.Left-1), int(point.Y-rect.Top-1)
fmt.Println(fmt.Sprintf("GetPixelColor hWnd: %v X: %v Y: %v color: %v",
hWnd, rectX, rectY, color,
))
})
hot_key.ListenHotKey()
<-quit
hot_key.UnregisterAllHotKey()
}