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() }