換膚效果
經過了前面四章的講解,我們終於知道了如何拖拉窗體使之改變大小,也知道了如何處理鼠標事件,同時,也知道了如何利用更好的編寫方式來編寫一個方便實用和維護的換膚程序。下面請看換膚效果(首先聲明,窗體樣式和按鈕樣式均來自於CodeProject,本人美工太差):
支持效果:
- 窗體拖拉,可以任意拖動窗體:重寫了自帶的DragMove類,使得拖拉和Resize不沖突。
- 窗體大小改變:通過WndProc接收所有的Windows消息來處理。
- 最大化,最小化,關閉窗體:這個系統自帶,但是最大化的時候會遮蔽任務欄,通過Win32函數處理。
- 改變窗體背景圖片,拋棄千篇一律的重復感:這個涉及到ImageBrush的內容,ViewPort的設置有關。
后續還需要改進,包括實現動畫效果等等。
這一系列准備寫下去,包括之后的線程和UI交互,異步處理長時間的操作等等,敬請關注,謝謝。
源碼下載