做專案中間遇到了mdi窗體內邊框的問題,經過苦苦尋找,最終得到了解決方案
在main窗體中呼叫api
//win32 constants
private
const
int gwl_style = -16
;
private
const
int gwl_exstyle = -20
;
private
const
int ws_border = 0x00800000
;
private
const
int ws_ex_clientedge = 0x00000200
;
private
const
uint swp_nosize = 0x0001
;
private
const
uint swp_nomove = 0x0002
;
private
const
uint swp_nozorder = 0x0004
;
private
const
uint swp_noactivate = 0x0010
;
private
const
uint swp_framechanged = 0x0020
;
private
const
uint swp_noownerzorder = 0x0200
;
//win32 方法
[dllimport("
user32.dll
", charset =charset.auto)]
private
static
extern
int getwindowlong(intptr hwnd, int
index);
[dllimport(
"user32.dll
", charset =charset.auto)]
private
static
extern
int setwindowlong(intptr hwnd, int index, int
value);
[dllimport(
"user32.dll
", exactspelling = true
)]
private
static
extern
intsetwindowpos(intptr hwnd, intptr hwndinsertafter,
int x, int y, int cx, int cy, uint uflags);
獲取到api後在form_load事件中加入如下**
//獲取mdi客戶區
for (int i = 0; i < this.controls.count; i++)
重新執行程式,ok
去除MDI窗體的滾動條
當mdi窗體的子窗體拖動超出父窗體邊界時,那個醜陋難看的滾動條就會出現,今天網上搜了好久終於找到去掉的辦法了。下面把 貼出來。c private const int sb both 3 private const int wm nccalcsize 0x83 dllimport user32.dll...
MDI窗體設計
1.mdi窗體設計 乙個父體中包含幾個子窗體,子窗體共同顯示。2.屬性 ismdicontener 是否將當前窗體設定為父窗體,預設為false 3.設計步驟 1 首先將當前窗體a設定為父窗體 2 通過乙個選單控制項,建立子窗體物件 3 將子窗體的父窗體設定為窗體a 4.方法layou i 給子視窗...
MDI窗體容器
mdi窗體容器 一般來說,窗體是頂級容器,不允許放在其他任何容器內,但是如果將某個窗體的ismdicontainer屬性設定為true,那此窗體就會成為窗體容器,可以在其中放入其他窗體 在內部的窗體不管怎麼調整,是無法跳出其父級窗體容器的 注 如果想讓內部窗體一直最大化並且不要其顯示最大化最小化按鈕...