From a6799263b54d9d4e93597a4876c45e09d02ec142 Mon Sep 17 00:00:00 2001 From: vcaesar Date: Sat, 25 Aug 2018 09:51:38 -0400 Subject: [PATCH] add close window example and add set handle by pid func --- examples/window/main.go | 1 + robotgo.go | 10 ++++++++++ window/goWindow.h | 2 +- window/window.h | 6 +++--- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/examples/window/main.go b/examples/window/main.go index e67e02c..84aa26d 100644 --- a/examples/window/main.go +++ b/examples/window/main.go @@ -69,6 +69,7 @@ func window() { // hwnd := robotgo.GetHWND() robotgo.MinWindow(fpid[0]) robotgo.MaxWindow(fpid[0]) + robotgo.CloseWindow(fpid[0]) robotgo.Kill(fpid[0]) } diff --git a/robotgo.go b/robotgo.go index 5fe5824..240a325 100644 --- a/robotgo.go +++ b/robotgo.go @@ -1381,6 +1381,16 @@ func SetHandle(hwnd int) { C.set_handle(chwnd) } +// SetHandlePid set the window handle by pid +func SetHandlePid(pid int32, args ...int32) C.MData { + var isHwnd int32 + if len(args) > 0 { + isHwnd = args[0] + } + + return C.set_handle_pid(C.uintptr(pid), C.uintptr(isHwnd)) +} + // GetHandle get the window handle func GetHandle() int { hwnd := C.get_handle() diff --git a/window/goWindow.h b/window/goWindow.h index 5638092..1ef174e 100644 --- a/window/goWindow.h +++ b/window/goWindow.h @@ -106,7 +106,7 @@ void set_active(const MData win){ } void active_PID(uintptr pid, uintptr isHwnd){ - MData win = set_hand_pid(pid, isHwnd); + MData win = set_handle_pid(pid, isHwnd); SetActive(win); } diff --git a/window/window.h b/window/window.h index f7c1b77..6bf1c86 100644 --- a/window/window.h +++ b/window/window.h @@ -49,7 +49,7 @@ void initWindow(uintptr handle){ setHandle(handle); } -MData set_hand_pid(uintptr pid, uintptr isHwnd){ +MData set_handle_pid(uintptr pid, uintptr isHwnd){ MData win; #if defined(IS_MACOSX) @@ -547,7 +547,7 @@ void close_main_window (){ } void close_window_by_PId(uintptr pid, uintptr isHwnd){ - MData win = set_hand_pid(pid, isHwnd); + MData win = set_handle_pid(pid, isHwnd); close_window_by_Id(win); } @@ -592,7 +592,7 @@ char* get_main_title(){ } char* get_title_by_pid(uintptr pid, uintptr isHwnd){ - MData win = set_hand_pid(pid, isHwnd); + MData win = set_handle_pid(pid, isHwnd); return get_title_by_hand(win); }