日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.Net Micro Framework研究—绘图

發(fā)布時間:2025/4/5 asp.net 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .Net Micro Framework研究—绘图 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

試驗平臺:.Net Micro Framework 模擬器

?

目前在VS2005的環(huán)境里,還不支持.Net Micro Framework界面的所見即所得繪制,界面制作有三種方式,一是窗體直接繪圖,二是Panel+形狀對象、三是窗體+控件。第一種做法讓人覺得又回到了DOS時代,回到了SCREEN 12的16色的世界里。

?

窗體當(dāng)前僅能層現(xiàn)一個控件,用Window.Child屬性去賦值。

支持的控件主要有Panel、Listbox、Image、Text等,其中Panel可包含多個子控件。

支持的形狀對象主要有Ellipse,Line,Polygon,Rectangle等。

支持的繪圖函數(shù)主要有:

DrawEllipse,DrawImage,DrawLine,DrawPolygon,DrawRectangle,DrawText,SetPixel;

?

本篇內(nèi)容主要介紹窗體直接繪圖,其他相關(guān)內(nèi)容在后面的篇章里陸續(xù)介紹。

1、新建項目,請選擇window Application,如下圖所示

?


?

模板自帶的代碼,是一個window窗體上包含一個Text控件,控件顯示的內(nèi)容就是:Hello World!

2、窗體直接繪圖

當(dāng)前工程,除資源和引用外,其他的代碼都可以刪除,取而代之的是下面的代碼,我嘗試用最簡單的代碼,來表現(xiàn)MF的繪圖能力。

?

  • using?System; ?
  • ?
  • using?Microsoft.SPOT; ?
  • ?
  • using?Microsoft.SPOT.Input; ?
  • ?
  • using?Microsoft.SPOT.Presentation; ?
  • ?
  • using?Microsoft.SPOT.Presentation.Controls; ?
  • ?
  • using?Microsoft.SPOT.Presentation.Media; ?
  • ?
  • ? ?
  • ?
  • namespace?MFWindow ?
  • ?
  • { ?
  • ?
  • ????public?class?Program?:?Microsoft.SPOT.Application ?
  • ?
  • ????{ ?
  • ?
  • ????????public?static?void?Main() ?
  • ?
  • ????????{??? ?
  • ?
  • ????????????//創(chuàng)建窗體 ?
  • ?
  • ????????????WindowsDrawing?win?=?new?WindowsDrawing(); ?
  • ?
  • ????????????win.Width?=?SystemMetrics.ScreenWidth; ?
  • ?
  • ????????????win.Height?=?SystemMetrics.ScreenHeight; ?
  • ?
  • ? ?
  • ?
  • ????????????//程序運行 ?
  • ?
  • ????????????new?Program().Run(win); ?
  • ?
  • ????????} ?
  • ?
  • ????????//從Window派生一個類,重載OnRender方法 ?
  • ?
  • ????????internal?sealed?class?WindowsDrawing??:Window ?
  • ?
  • ????????{ ?
  • ?
  • ????????????public?override?void?OnRender(DrawingContext?dc) ?
  • ?
  • ????????????{ ?
  • ?
  • ????????????????Color?c?=?ColorUtility.ColorFromRGB(128,?0,255); ?
  • ?
  • ????????????????Brush?b?=?new?SolidColorBrush(c); ?
  • ?
  • ????????????????Pen?p?=?new?Pen(c); ?
  • ?
  • ? ?
  • ?
  • ????????????????//繪制背景(繪矩形) ?
  • ?
  • ????????????????dc.DrawRectangle(b,?p,?0,?0,?Width,?Height);? ?
  • ?
  • ????????????????? ?
  • ?
  • ????????????????//繪橢圓(刷子無效) ?
  • ?
  • ????????????????b?=?new?SolidColorBrush(Color.White); ?
  • ?
  • ????????????????p=new?Pen(Color.Black); ?
  • ?
  • ????????????????dc.DrawEllipse(b,?p,?40,20,?40,20); ?
  • ?
  • ? ?
  • ?
  • ????????????????//繪線(線的粗細參數(shù)無效) ?
  • ?
  • ????????????????p?=?new?Pen(?ColorUtility.ColorFromRGB(255,?0,0),5); ?
  • ?
  • ????????????????dc.DrawLine(p,?40,?20,?100,80); ?
  • ?
  • ? ?
  • ?
  • ????????????????//繪矩形(刷子有效,線寬有效) ?
  • ?
  • ????????????????b?=?new?SolidColorBrush(Color.White); ?
  • ?
  • ????????????????p?=?new?Pen(Color.Black,4); ?
  • ?
  • ????????????????dc.DrawRectangle(b,?p,?80,?60,?100,?80); ?
  • ?
  • ? ?
  • ?
  • ????????????????//繪多邊行(刷子無效) ?
  • ?
  • ????????????????int[]?points?=?{?10,?230,?30,?210,?0,?180,?30,?130,?50,?130,?80,?180,?50,?210,?70,?230?}; ?
  • ?
  • ????????????????b?=?new?SolidColorBrush(Color.White); ?
  • ?
  • ????????????????p?=?new?Pen(ColorUtility.ColorFromRGB(0,?255,0),3); ?
  • ?
  • ????????????????dc.DrawPolygon(b,p,?points); ?
  • ?
  • ? ?
  • ?
  • ????????????????//寫文字 ?
  • ?
  • ????????????????c=?ColorUtility.ColorFromRGB(0,?255,?255); ?
  • ?
  • ????????????????dc.DrawText("http://yfsoft.blog.51cto.com",?Resources.GetFont(Resources.FontResources.small),?c,?180,?20); ?
  • ?
  • ? ?
  • ?
  • ????????????????//繪制位圖(支持bmp,gif,jpg,png等等圖片) ?
  • ?
  • ????????????????dc.DrawImage(Resources.GetBitmap(Resources.BitmapResources.YFMSMVP),230,130); ?
  • ?
  • ????????????} ?
  • ?
  • ????????} ?
  • ?
  • ????} ?
  • ?
  • } ?
  • ?
  • 程序運行后的畫面如下:


    ?

    如上面代碼中的注釋所示,DrawEllipse、DrawLine、DrawPolygon函數(shù)對刷子填充和pen的寬度都不支持,目前僅最簡單的DrawRectangle函數(shù)實現(xiàn)的最好,這說明微軟的SDK還是很不完善的,就像串口操作僅支持波特率修改,而不支持奇偶校驗、數(shù)據(jù)位修改一樣。估計微軟推出SDK3.0或SDK4.0的時候,我想.Net Micro Framework才是成熟的時候。

    ?

    ?

    總結(jié)

    以上是生活随笔為你收集整理的.Net Micro Framework研究—绘图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 天天摸天天操天天爽 | 国产成人在线免费视频 | 欧美在线一区视频 | 久青草资源福利视频 | 天堂网8 | 欧美男人又粗又长又大 | 三上悠亚一区二区 | 偷偷操不一样的久久 | 免费观看日韩毛片 | 天天透天天干 | 免费无毒av | 九九视频在线 | 国外成人在线视频 | 在线观看欧美 | 91gao| 天堂资源站 | 亚洲视频中文字幕 | 国产视频欧美视频 | 日韩中文字幕有码 | 色乱码一区二区三区熟女 | 美女被猛网站 | 日韩高清一区二区 | 骚虎视频在线观看 | 五月婷婷六月激情 | 欧美日韩国产亚洲一区 | 爱露出| 亚洲视频免费看 | 亚洲性生活网站 | 春色校园激情 | 爱爱91| 熟妇人妻久久中文字幕 | 一卡二卡三卡四卡五卡 | 毛片视频大全 | 久久国产传媒 | 日本一区二区欧美 | 人妻少妇久久中文字幕 | 中文字幕第18页 | 1024日韩| 精品乱码一区二区三区 | 在线a免费 | 欧洲最强rapper网站直播 | 色播日韩 | 依人久久 | 三上悠亚 电影 | 娇小萝被两个黑人用半米长 | 欧美三级视频 | 久久大| 影音先锋男人的天堂 | 香蕉久久国产av一区二区 | 亚洲欧美日韩精品久久亚洲区 | 扒开伸进免费视频 | 99午夜视频 | 一级黄色大片视频 | 清清草在线视频 | www.精品视频| 欧美精品在线免费观看 | 久久水蜜桃 | 亲子乱aⅴ一区二区三区 | 亚洲精品99999 | 午夜香蕉| 色丁香婷婷综合久久 | 黄色99| 日韩欧美亚洲一区二区三区 | 三区在线 | 人人爱人人艹 | www.黄在线 | 婷婷人体 | 国模私拍xvideos私拍 | 亚洲午夜网站 | 中文字幕日日 | 中文字幕一区二区三区夫目前犯 | 国产天堂精品 | 国外av在线 | 俄罗斯乱妇 | 国内视频精品 | 精品一区二区三区四区 | 男人猛吃奶女人爽视频 | 插插插综合| 俄罗斯精品一区二区三区 | mdyd—856冲田杏梨在线 | 黄色一级淫片 | 91小宝寻花一区二区三区 | 99精彩视频| 涩涩网站在线看 | 亚洲成人三级 | 欧美综合成人 | 亚洲性喷水 | 九九热在线视频观看 | 国产97色在线 | 日韩 | 牛人盗摄一区二区三区视频 | 毛片1000部免费看 | 日本欧美一本 | 年代下乡啪啪h文 | 国产高清成人 | 日韩欧美性视频 | 污视频软件在线观看 | 亚洲国产传媒 | 久久99精品国产麻豆婷婷 | 美女av网|