#if java
import com.sun.jna.*;
import com.sun.jna.platform.win32.*;
import com.sun.jna.platform.win32.WinDef.*;
import com.sun.jna.platform.win32.WinUser.*;
public interface User32Extended extends User32 {
User32Extended INSTANCE = Native.load("user32", User32Extended.class);
boolean GetCursorPos(POINT lpPoint);
HMENU GetSystemMenu(HWND hWnd, boolean bRevert);
boolean TrackPopupMenu(HMENU hMenu, int uFlags, int x, int y, int nReserved, HWND hWnd, RECT prcRect);
int TPM_RETURNCMD = 0x0100; // Track menu as system command
void PostMessageA(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
}
public void PostMessageWrapper(HWND hwnd, long tmsg, long twParam, long tlParam){
UINT msg = new UINT(tmsg);
WPARAM wParam = new WPARAM(twParam);
LPARAM lParam = new LPARAM(tlParam);
getUser32().PostMessageA(hwnd,msg,wParam,lParam);
}
public User32Extended getUser32(){
return User32Extended.INSTANCE;
}
#End If
Sub ShowSnapLayouts(MyForm As Form)
Dim hwnd As JavaObject = GetHwnd(MyForm)
' Dim user32 As JavaObject = Me.as(JavaObject).RunMethod("getUser32",Null)
Dim msg As Long = 0x112
Dim wParam As Long = 0xF030
Dim lParam As Long = 0
Me.as(JavaObject).RunMethod("PostMessageWrapper", Array(hwnd, msg, wParam, lParam))
End Sub