自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

介紹一個基于WinForm實(shí)現(xiàn)表單窗體設(shè)計(jì)器

開發(fā) 后端
本文將介紹一個WinForm表單窗體設(shè)計(jì)器,這里我們還要用到.NET方面的知識,希望本文能對大家有所幫助。

WinForm表單窗體設(shè)計(jì)器的外觀如圖所示,WinForm表單窗體設(shè)計(jì)器的功能包括基本的移動,拖動虛線邊框和手柄調(diào)整尺寸,移動和調(diào)整尺寸過程中均可繪制對齊線,自動對齊,和Visual Studio效果一樣,支持畫框多選后同時操作多個對象.

外觀1

 

外觀2



類圖:
類圖1


我用的WinForm表單窗體設(shè)計(jì)器的方法自己感覺還是比較挫的,并不復(fù)雜.

類圖2

看這個對象,我將虛線邊框定義為TargetSizeLine,將手柄定義為TargetSizeDot,TargetSizeGroup的意思是邊框組,用來保存若干個手柄對象和邊框?qū)ο?一個邊框組中一般保存四個邊框?qū)ο?分別為四條邊。

TargetSizeDot對象通過一個枚舉,TargetDirection,來表示其所代表的方向,這在調(diào)整目標(biāo)對象的尺寸時使用.中間粉色的目標(biāo)對象,我是從UserControl繼承的,為UserControlTarget,它綁定一個TargetSizeGroup對象。

通過邊框調(diào)整目標(biāo)對象的尺寸是在邊框組對象中響應(yīng)的,在類圖上可以看到TargetSizeGroup里的事件:OnMouseDown,OnMouseMove,OnMouseUp。

拖動和調(diào)整尺寸只要響應(yīng)這幾個鼠標(biāo)事件即可。繪制對齊線和自動對齊其實(shí)也比較簡單,移動或調(diào)整對象尺寸時,和已有的其它對象對比,如果邊框距離相近,如5像素之內(nèi),就直接讓它靠到那條線上去,而畫線,就判斷如果邊框在同一條線上,就DrawLine。

【編輯推薦】

  1. ASP.NET Session 模型簡述
  2. ASP.NET頁生命周期介紹:階段,事件及其他
  3. ASP.NET MVC生命周期介紹
  4. 處理ASP.NET Session失效的幾個方法
  5. ASP.NET:所有實(shí)例共享一個static變量
責(zé)任編輯:彭凡 來源: cnblogs
相關(guān)推薦

2009-09-24 17:09:03

XML設(shè)計(jì)器

2015-09-08 11:06:46

設(shè)計(jì)編輯窗體

2009-07-07 11:38:54

jsp oracle

2021-08-08 21:17:18

管理配置平臺

2023-01-18 07:49:42

2023-07-10 07:58:45

2023-10-06 11:48:37

reactvuenodejs

2021-12-08 07:31:40

設(shè)計(jì)Localcache緩存

2014-04-14 15:54:00

print()Web服務(wù)器

2011-10-25 09:28:30

Node.js

2017-08-11 17:55:48

前端JavaScript模板引擎

2010-06-13 09:15:16

WinForm窗體

2019-01-18 08:28:21

服務(wù)器程序架構(gòu)

2023-04-17 09:08:27

CSS計(jì)時器

2021-06-25 10:38:05

JavaScript編譯器前端開發(fā)

2016-11-08 18:53:08

編譯器

2022-10-20 11:00:52

SQL解析器

2024-12-09 00:00:03

Vue3項(xiàng)目表單

2013-03-26 14:17:21

架構(gòu)架構(gòu)設(shè)計(jì)事件驅(qū)動

2021-11-01 12:25:56

Redis分布式
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號