日期:2014-05-17 浏览次数:20984 次
Win32单元 [DllImport("user32.dll", CharSet = CharSet.Auto)] public static extern int SetWindowLong(IntPtr hWnd, int Index, int Value); public const int WS_SYSMENU = 0x80000; public const int WS_SIZEBOX = 0x40000; public const int WS_MAXIMIZEBOX = 0x10000; public const int WS_MINIMIZEBOX = 0x20000; public const int SM_CXFRAME = 0x20; public const int WS_THICKFRAME = 0x40000; private void SetFormStyle(Form form) { int i = Win32.GetSystemMetrics(Win32.SM_CXFRAME); this.FormBorderStyle = FormBorderStyle.None; int windowLong = (Win32.GetWindowLong(form.Handle, -16)); OperatingSystem osinfo = Environment.OSVersion; if (osinfo.Platform == PlatformID.Win32NT) { if (osinfo.Version.Major == 6) { this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width + i, Screen.PrimaryScreen.WorkingArea.Height); Win32.SetWindowLong(form.Handle, -16, windowLong | Win32.WS_MAXIMIZEBOX | Win32.WS_MINIMIZEBOX); } else { this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width + i, Screen.PrimaryScreen.WorkingArea.Height + i); Win32.SetWindowLong(form.Handle, -16, windowLong | Win32.WS_SYSMENU | Win32.WS_THICKFRAME | Win32.WS_MAXIMIZEBOX | Win32.WS_MINIMIZEBOX); } } }