using System; using System.Drawing; using System.Runtime.InteropServices; namespace Dongke.WinForm.Controls { internal class NativeMethods { public const int WM_GETMINMAXINFO = 0x0024; public const int WM_NCHITTEST = 0x0084; public const int WM_NCACTIVATE = 0x0086; public const int WS_EX_NOACTIVATE = 0x08000000; public const int HTTRANSPARENT = -1; public const int HTLEFT = 10; public const int HTRIGHT = 11; public const int HTTOP = 12; public const int HTTOPLEFT = 13; public const int HTTOPRIGHT = 14; public const int HTBOTTOM = 15; public const int HTBOTTOMLEFT = 16; public const int HTBOTTOMRIGHT = 17; [StructLayout(LayoutKind.Sequential)] public struct MINMAXINFO { public Point reserved; public Size maxSize; public Point maxPosition; public Size minTrackSize; public Size maxTrackSize; } public static int HIWORD(int n) { return (n >> 16) & 0xffff; } public static int HIWORD(IntPtr n) { return HIWORD(unchecked((int)(long)n)); } public static int LOWORD(int n) { return n & 0xffff; } public static int LOWORD(IntPtr n) { return LOWORD(unchecked((int)(long)n)); } } }