在實際專案中,winform窗體或者控制項不能滿足要求,所以就需要自己設計窗體等,當然設計介面可以用的東西很多,例如wpf、或者一些第三方的庫等。本例中將採用winform設計乙個扁平美觀的窗體。
需要的可以參考:c#自定義button按鈕控制項
窗體效果:
///是否允許最大化
3///
4private
bool maxvisible = true
;5 [description("
是否允許最大化")]
6public
bool
maxvisible79
set10
17else
1822}23
}242526
///27
///窗體標題
28///
29private
string
titletext;
30 [description("
窗體標題")]
31public
string
titletext
3234
set3540}
41///
42///
窗體標題是否顯示
43///
44private
bool titlevisible = true
;45 [description("
窗體標題是否顯示")]
46public
bool
titlevisible
4749
set5054}
5556
///57
///視窗預設大小
58///
formsize.normal or formsize.max
59///
60private formsize defaultformsize =formsize.normal;
61 [description("
視窗預設大小")]
62public
formsize defaultformsize
6365
set6676}
77 }
1const
int wm_nchittest = 0x0084;2
const
int htleft = 10; //
左邊界3
const
int htright = 11; //
右邊界4
const
int httop = 12; //
上邊界5
const
int httopleft = 13; //
左上角6
const
int httopright = 14; //
右上角7
const
int htbottom = 15; //
下邊界8
const
int htbottomleft = 0x10; //
左下角9
const
int htbottomright = 17; //
右下角
protectedoverride
void wndproc(ref
message m)
}
1///2
///最小化按鈕事件
3///
4///
5///
6private
void btnexmin_buttonclick(object
sender, eventargs e)710
11///
12///
最大化按鈕事件
13///
14///
15///
16private
void btnexmax_buttonclick(object
sender, eventargs e)
1720
21///
22///
關閉按鈕事件
23///
24///
25///
26private
void btnexclose_buttonclick(object
sender, eventargs e)
2730
31///
32///
滑鼠按下標題欄
33///
34///
35///
36private
void titlebar_mousedown(object
sender, mouseeventargs e)
3740
41///
42///
滑鼠在移動
43///
44///
45///
46private
void titlebar_mousemove(object
sender, mouseeventargs e)
4752}53
54private
void titlebar_doubleclick(object
sender, eventargs e)
5558
5960
///61
///最大化和正常狀態切換
62///
63private
void
maxnormalswitch()
6471
else
7279
this.invalidate();//
使重繪80}81
Qt 無邊框視窗自定義標題欄
實現了自定義標題欄的最小化,最大化 自適應工作列 關閉,拉伸,拖曳。因為不想引入其他資源,所以按鈕,背景都是系統提供的。效果圖 直接上 用法 include widget.h int main int argc,char argv pragma once include class qtoolbut...
Qt之自定義介面(實現無邊框 可移動)
ui設計是指對軟體的人機互動 操作邏輯 介面美觀的整體設計。好的ui設計不僅是讓軟體變得有個性 有品位,還要讓軟體的操作變得舒適簡單 自由,充分體現軟體的定位和特點。愛美之心人皆有之。其實軟體介面就像工業造型一樣,是產品的重要賣點。乙個產品擁有美觀的介面會給人帶來舒適的視覺享受,拉近人與產品的距離,...
WinForm 建立自定義控制項
雖然vs為我們提供了很多控制項可以使用,但有時候這些控制項仍然不能滿足我們的要求,比如我們要對部分控制項進行一些個性化的定製,例如美化控制項,這時候就需要自己繪製控制項,或是在原有控制項的基礎上進行修改 自定義控制項分為三種 1 組合控制項 compositecontrols 在原有控制項的基礎上根...