rename references

This commit is contained in:
2023-09-28 20:24:18 +08:00
parent 50b5f8c2c1
commit 0be2781d70
274 changed files with 0 additions and 0 deletions

View File

@ -0,0 +1,77 @@
package window.controller;
import com.sun.jna.Native;
import com.sun.jna.platform.win32.User32;
import com.sun.jna.platform.win32.WinDef;
import com.sun.jna.platform.win32.WinDef.DWORD;
import com.sun.jna.platform.win32.WinDef.HWND;
//import com.sun.jna.*;
//import com.sun.jna.platform.win32.WinDef.HWND;
import com.sun.jna.win32.*;
public class GetWindowRect {
public interface MyUser32 extends StdCallLibrary {
MyUser32 INSTANCE = (MyUser32) Native.loadLibrary("user32", MyUser32.class,
W32APIOptions.DEFAULT_OPTIONS);
HWND FindWindow(String lpClassName, String lpWindowName);
int GetWindowRect(HWND handle, int[] rect);
}
public static int[] getRect(String windowName) throws WindowNotFoundException,
GetWindowRectException {
HWND hwnd = MyUser32.INSTANCE.FindWindow(null, windowName);
/*
char[] buffer = new char[1000];
//HWND next = User32.INSTANCE.GetForegroundWindow();
HWND next = User32.INSTANCE.FindWindow(null, null);
//HWND next = User32.INSTANCE.GetWindow(all, new DWORD(2));
while (next != null) {
User32.INSTANCE.GetWindowText(next, buffer, buffer.length);
if (next != null) {
System.out.println("found something - " + String.valueOf(buffer));
}
next = User32.INSTANCE.GetWindow(next, new DWORD(2));
}
*/
if (hwnd == null) {
throw new WindowNotFoundException("", windowName);
}
int[] rect = {0, 0, 0, 0};
int result = MyUser32.INSTANCE.GetWindowRect(hwnd, rect);
if (result == 0) {
throw new GetWindowRectException(windowName);
}
return rect;
}
@SuppressWarnings("serial")
public static class WindowNotFoundException extends Exception {
public WindowNotFoundException(String className, String windowName) {
super(String.format("Window null for className: %s; windowName: %s",
className, windowName));
}
}
@SuppressWarnings("serial")
public static class GetWindowRectException extends Exception {
public GetWindowRectException(String windowName) {
super("Window Rect not found for " + windowName);
}
}
}