




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、超全面的.NET GDI+圖形圖像編程教程GDI+繪圖基礎(chǔ)編寫圖形程序時需要使用GDI(Graphics Device Interface,圖形設(shè)備接口)。從程序設(shè)計的角度看,GDI包括兩部分:GDI對象和GDI函數(shù)。GDI對象定義了GDI函數(shù)使用的工具和環(huán)境變量;而GDI函數(shù)使用GDI對象繪制各種圖形。在C#中,進(jìn)行圖形程序編寫時用到的是GDI+(Graphics Device Interface Plus,圖形設(shè)備接口)版本,GDI+是GDI的進(jìn)一步擴(kuò)展,它使我們編程更加方便。1 GDI+概述GDI+是微軟在Windows 2000以后操作系統(tǒng)中提供的新的圖形設(shè)備接口,其通過一套部署為托管
2、代碼的類來實現(xiàn),這套類被稱為GDI+的“托管類接口”。GDI+主要提供了一下三類服務(wù):1.二維矢量圖形:GDI+提供了存儲圖形基元自身信息的類(或結(jié)構(gòu)體)、存儲圖形基元繪制方式信息的類以及實際進(jìn)行繪制的類。2.圖像處理:大多數(shù)圖片都難以劃定為直線和曲線的集合,無法使用二維矢量圖形方式進(jìn)行處理。因此,GDI+為我們提供了Bitmap、Image等類,它們可用于顯示、操作和奧村BMP、JPG、GIF等圖像格式。3.文字顯示:GDI+支持使用各種字體、字號和樣式來顯示文本。我們要進(jìn)行圖形編程,就必須先講解Graphics類,同時我們還必須掌握Pen、Brush和Rectangle這幾種類。GDI+比
3、GDI優(yōu)越主要表現(xiàn)在兩個方面:1.GDI+通過提供新功能(例如:漸變畫筆和Alpha混合)擴(kuò)展了GDI的功能;2.修訂了編程模型,是圖形編程更加簡易靈活。2 Graphics類Graphics類封裝一個GDI+繪圖圖面,提供將對象繪制到現(xiàn)實設(shè)備的方法,Graphics與特定的設(shè)備上下文關(guān)聯(lián)。畫圖方法都被包括在Graphics類中國,在畫任何對象(例如:Circle Rectangle)時,我們首先要創(chuàng)建一個Graphics類實例,這個實例相當(dāng)于建立了一塊畫布,有了畫布才可以用各種畫圖方法進(jìn)行繪圖。繪圖程序的設(shè)計過程一般分為兩個步驟:1.創(chuàng)建Graphics;2.使用Graphics對象的方法繪
4、圖、顯示文本或處理圖像。通常我們使用下述三種方法來創(chuàng)建一個Graphics對象:方法一:利用控件或窗體的Paint事件中的PaintEventArgs在窗體或控件的Paint事件中接受對圖形對象的引用,作為PaintEventArgs(PaintEventArgs指定繪制控件所用的Graphics)的一部分,在為控件創(chuàng)建繪制代碼時,通常會使用此方法來獲取對圖形對象的引用。例如:創(chuàng)建Graphics對象的兩種方法1. /窗體的Paint事件的響應(yīng)方法2. privatevoidFrm_Demo_Paint(objectsender,PaintEventArgse)3. 4. Graphics_G
5、raphics=e.Graphics;5. 6. 7. /也可以直接重載控件或窗體的OnPaint方法8. protectedoverridevoidOnPaint(PaintEventArgse)9. 10. Graphics_Graphics=e.Graphics;11. 12. 13. 創(chuàng)建Graphics對象的兩種方法Paint事件在重繪控件時發(fā)生。方法二:調(diào)用某控件或窗體的CreateGraphics方法調(diào)用某控件或窗體的CreateGraphics方法以獲取對Graphics對象的引用,該對象表示該控件或窗體的繪圖圖面。如果想在已存在的窗體或控件上繪圖,通常會使用此方法,例如:1.
6、 1Graphics_Graphics=this.CreateGraphics();/在當(dāng)前窗體上創(chuàng)建Graphics對象方法三:調(diào)用Graphics類的FromImage靜態(tài)方法由從Image集成的任何對象創(chuàng)建Graphics對象。在需要更改已存在的圖像時,通常會使用此方法。例如:使用Graphics.FromImage()方法 創(chuàng)建Graphics對象1. Imageimg=Image.FromFile(孤影.jpg);/建立Image對象2. Graphics_Graphics=Graphics.FromImage(img);/創(chuàng)建Graphics對象2.1 Graphics類的方法成員
7、有了一個Graphics的對象引用后,就可以利用該對象的成員進(jìn)行各種各樣圖形的繪制,下面表格列出了Graphics類的常用方法成員:Graphics類常用方法成員名稱說明名稱說明DrawArc畫弧DrawBezier畫立體的貝爾塞曲線DrawBeziers畫連續(xù)立體的貝爾塞曲線DrawClosedCurve畫閉合曲線DrawCurve畫曲線DrawEllipse畫橢圓DrawImage畫圖像DrawLine畫線DrawPath通過路徑畫線和曲線DrawPie畫餅形DrawPolygon畫多邊形DrawRectangle畫矩形DrawString繪制文字FillEllipse填充橢圓FillPa
8、th填充路徑FillPie填充餅圖FillPolygon填充多邊形FillRectangle填充矩形FillRectangles填充矩形組FillRegion填充區(qū)域在.NET中,GDI+的所有繪圖功能都包括在System、System.Drawimg、System.Drawimg.Imaging、System.Drawimg.Drawimg2D和System.Drawimg.Text等命名空間中,因此開始用GDI+類之前,需要先引用相應(yīng)的命名空間。2.2 引用命名空間在C#應(yīng)用程序中使用using命令引用給定的命名空間或類,下面是一個C#應(yīng)用程序引用命名空間的例子:引用命名空間1. usin
9、gSystem;2. usingSystem.Collections.Generic;3. usingSystem.Data;4. usingSystem.ComponentModel;5. usingSystem.Drawing;6. usingSystem.Drawing.Drawing2D;7. usingSystem.Drawing.Imaging;8. 9. 引用命名空間3 常用畫圖對象在創(chuàng)建了Graphics對象后,就可以用它開始繪圖了,可以畫線、填充圖形、顯示文本等等,其中主要用到的對象還有:Pen:用來用patterns、colors或者bitmaps進(jìn)行填充Color:用來畫
10、線和多邊形,包括矩形、圓和餅形Font:用來給文字設(shè)置字體格式Brush:用來描述顏色Rectangle:矩形結(jié)構(gòu)通常用來在窗體上畫矩形Point:描述一對有序的x,y兩個坐標(biāo)值3.1 Pen類Pen類用來繪制指定寬度和樣式的直線。使用DashStyle屬性繪制幾種虛線,可以使用各種各樣填充樣式(包括純色和紋理)來填充Pen繪制的直線,填充模式取決于畫筆或用作填充對象的紋理。使用畫筆時,需要先實例化一個畫筆對象,主要有以下幾種方法:實例化畫筆對象1. /用指定的顏色實例化一只畫筆2. publicPen(Color);3. 4. /用指定的畫刷實例化一只畫筆5. publicPen(Brush
11、);6. 7. /用指定的畫刷和寬度實例化一只畫筆8. publicPen(Brush,float);9. 10. /用指定的顏色和寬度實例化一只畫筆11. publicPen(Color,float);12. 13. /實例化畫筆格式如下:14. Penpen=newPen(Color.Blue);15. /或者:16. Penpen=newPen(Color.Blue,100);17. 18. 實例化畫筆對象Pen常用的屬性如下:Pen常用屬性名稱說明名稱說明Alignment獲得或者設(shè)置畫筆的對齊方式Brush獲得或者設(shè)置畫筆的屬性Color獲得或者設(shè)置畫筆的顏色Width獲得或者設(shè)置畫
12、筆的寬度3.2 Color結(jié)構(gòu)在自然界中,顏色大都由透明度(A)和三基色(R,G,B)所組成。在GDI+中,通過Color結(jié)構(gòu)封裝對顏色的定義,Color結(jié)構(gòu)中,除了提供(A,R,G,B)以外,還提供許多系統(tǒng)定義的顏色,如Pink(粉色)。另外,還提供許多靜態(tài)成員,用戶對顏色進(jìn)行操作。Color結(jié)構(gòu)的基本屬性如下表:顏色的基本屬性名稱說明A獲取此Color結(jié)構(gòu)的Alpha分量值,取值(0255)R獲取此Color結(jié)構(gòu)的紅色分量值,取值(0255)G獲取此Color結(jié)構(gòu)的綠色分量值,取值(0255)B獲取此Color結(jié)構(gòu)的藍(lán)色分量值,取值(0255)Name獲取此Color結(jié)構(gòu)的名稱,這將返回用
13、戶定義的顏色的名稱或已知顏色的名稱(如果該顏色是從某個名稱創(chuàng)建的)。對于自定義的顏色,這將返回RGB值。Color結(jié)構(gòu)的基本(靜態(tài))方法如下表:顏色的基本方法名稱說明FromArgb從四個8位的ARGB分量(Alpha、紅色、綠色和藍(lán)色)值創(chuàng)建Color結(jié)構(gòu)FromKnowColor從指定餓預(yù)定義顏色創(chuàng)建一個Color結(jié)構(gòu)FromName從預(yù)定義顏色的指定名稱創(chuàng)建一個Color結(jié)構(gòu)。Color結(jié)構(gòu)變量可以通過已有顏色構(gòu)造,也可以通過RGB建立,例如:創(chuàng)建Color構(gòu)造對象1. Colorcolor1=Color.FromArgb(96,06,25);2. Colorcolor2=Color.F
14、romKnownColor(KnownColor.Blue);/KnowColor為枚舉類型3. Colorcolor3=Color.FromName(LightBlue);在圖像處理中一般需要獲取或設(shè)置像素的顏色值,獲取一幅圖像的某個像素顏色值得具體步驟如下:1.定義Bitmap1. Bitmapbitmap=newBitmap(D:孤影LonelyShadow.bmp);2.定義一個顏色變量,把在指定位置所取得的像素值存入顏色變量中1. Colorcolor=newColor();2. color=bitmap.GetPixel(10,10);/獲取此Bitmap中指定像素的顏色3.將顏色
15、值分解出單色分量值1. intr,g,b;2. r=color.R;3. g=color.G;4. b=color.B;3.3 Font類Font類定義特定文本格式,包括字體、字號和字形屬性。Font類的常用構(gòu)造函數(shù)是:publicFont(string字體名,float字號, FontStyle 字形)其中字號和字體為可選項publicFont(string字體名,float字號)其中字體名為Font的FontFamily的字符串表示形式下面是定義一個F哦你團(tuán)隊相愛難過的示例代碼:1. FontFamilyfontFamily=newFontFamily(Arial);2. Fontfont
16、=newFont(fontFamily,16,FontStyle.Regular,GraphicsUnit.Pixel);字體常用屬性如下表:字體的常用屬性名稱說明名稱說明Bold是否為粗體FontFamily字體成員Height字體高Italic是否為斜體Name字體名稱Size字體尺寸SizeInPoints獲取此Font對象的字號,以磅為單位Strikeout是否有刪除線Style字體類型UnderlineUnitUnit字體尺寸單位3.4 Brush類Brush類是一個抽象的基類,因此它不能被實例化,我們總是用它的派生類進(jìn)行實例化一個畫刷的對象,當(dāng)我們對圖形內(nèi)部進(jìn)行填充操作時就會用到畫
17、刷,關(guān)于畫刷在 1.5 中有詳細(xì)的講解。3.5 Rectangle結(jié)構(gòu)存儲一組整數(shù),共四個,表示一個矩形的位置和大小。矩形結(jié)構(gòu)通常用來在窗體上畫矩形,除了利用它的構(gòu)造函數(shù)矩形對象外,還可以利用Rectangle結(jié)構(gòu)的屬性成員,其屬性成員如下表:Rectangle結(jié)構(gòu)屬性名稱說明名稱索命Bottom底端坐標(biāo)Height矩形高IsEmpty測試矩形寬和高是否為0Left矩形左邊坐標(biāo)Location矩形的位置Right矩形右邊坐標(biāo)Size矩形尺寸Top矩形頂端坐標(biāo)Width矩形寬X矩形左上角頂點X坐標(biāo)Y矩形左上角頂點Y坐標(biāo)Rectangle結(jié)構(gòu)的構(gòu)造函數(shù)有以下兩個:Rectangle結(jié)構(gòu)的構(gòu)造函數(shù)1
18、. /用指定的位置和大小初始化Rectangle類的新實例2. publicRectangle(Point,Size);/Size結(jié)構(gòu)存儲一個有序整數(shù)對,通常為矩形的寬度和高度3. publicRectangle(int,int,int,int);1.3.6 Point結(jié)構(gòu)用指定坐標(biāo)初始化Point類的新實例,這個結(jié)構(gòu)很像C+的Point結(jié)構(gòu),它描述了一對有序的x,y兩個坐標(biāo)值,其構(gòu)造函數(shù)為:publicPoint(intx,inty);其中x為該點的水平位置;y為該點的垂直位置。下面是構(gòu)造Point對象的示例代碼:1. Pointpt1=newPoint(30,30);2. Pointpt2
19、=newPoint(110,110);4 基本圖形繪制舉例4.1 畫一個矩形建一個C#.NET WinForms窗體應(yīng)用程序,通過在窗體的OnPaint事件中繪制一個填充的漸變矩形:填充矩形方法FillRectangle()的語法幫助定義如下:填充矩形的方法FillRectangle() 語法定義1. /2. /摘要:3. /填充System.Drawing.Rectangle結(jié)構(gòu)指定的矩形的內(nèi)部。4. /5. /參數(shù):6. /brush:7. /確定填充特性的System.Drawing.Brush。8. /9. /rect:10. /System.Drawing.Rectangle結(jié)構(gòu),它
20、表示要填充的矩形。11. /12. /異常:13. /System.ArgumentNullException:14. /brush為null。15. publicvoidFillRectangle(Brushbrush,Rectanglerect);16. /17. /摘要:18. /填充System.Drawing.RectangleF結(jié)構(gòu)指定的矩形的內(nèi)部。19. /20. /參數(shù):21. /brush:22. /確定填充特性的System.Drawing.Brush。23. /24. /rect:25. /System.Drawing.RectangleF結(jié)構(gòu),它表示要填充的矩形。26.
21、 /27. /異常:28. /System.ArgumentNullException:29. /brush為null。30. publicvoidFillRectangle(Brushbrush,RectangleFrect);31. /32. /摘要:33. /填充由一對坐標(biāo)、一個寬度和一個高度指定的矩形的內(nèi)部。34. /35. /參數(shù):36. /brush:37. /確定填充特性的System.Drawing.Brush。38. /39. /x:40. /要填充的矩形的左上角的x坐標(biāo)。41. /42. /y:43. /要填充的矩形的左上角的y坐標(biāo)。44. /45. /width:46.
22、/要填充的矩形的寬度。47. /48. /height:49. /要填充的矩形的高度。50. /51. /異常:52. /System.ArgumentNullException:53. /brush為null。54. publicvoidFillRectangle(Brushbrush,floatx,floaty,floatwidth,floatheight);55. /56. /摘要:57. /填充由一對坐標(biāo)、一個寬度和一個高度指定的矩形的內(nèi)部。58. /59. /參數(shù):60. /brush:61. /確定填充特性的System.Drawing.Brush。62. /63. /x:64.
23、/要填充的矩形的左上角的x坐標(biāo)。65. /66. /y:67. /要填充的矩形的左上角的y坐標(biāo)。68. /69. /width:70. /要填充的矩形的寬度。71. /72. /height:73. /要填充的矩形的高度。74. /75. /異常:76. /System.ArgumentNullException:77. /brush為null。78. publicvoidFillRectangle(Brushbrush,intx,inty,intwidth,intheight);79. 80. 填充矩形的方法FillRectangle()語法定義我們在這里只使用第一種定義,演示填充矩形,示例
24、代碼如下:畫一個顏色漸變的矩形1. /2. /窗體的Paint事件的響應(yīng)方法3. /4. /當(dāng)前事件觸發(fā)者(當(dāng)前窗體)5. /附帶的事件參數(shù)6. privatevoidFrm_Demo_Paint(objectsender,PaintEventArgse)7. 8. Graphicsg=e.Graphics;/創(chuàng)建當(dāng)前窗體的Graphics對象9. Rectanglerect=newRectangle(50,30,100,100);/創(chuàng)建一個矩形(x,y,width,height)10. /創(chuàng)建線性漸變畫刷(畫刷界限,起始顏色,結(jié)束顏色,漸變角度)11. LinearGradientBrush
25、lBrush=newLinearGradientBrush(rect,Color.Purple,Color.LightBlue,LinearGradientMode.BackwardDiagonal);12. g.FillRectangle(lBrush,rect);/走起13. 14. 15. 畫一個顏色漸變的矩形上述代碼運行效果如下:4.2 畫一個弧畫弧線的語法定義如下:畫弧線方法DrawArc()的定義1. /2. /摘要:3. /繪制一段弧線,它表示System.Drawing.Rectangle結(jié)構(gòu)指定的橢圓的一部分。4. /5. /參數(shù):6. /pen:7. /System.Dra
26、wing.Pen,它確定弧線的顏色、寬度和樣式。8. /9. /rect:10. /System.Drawing.RectangleF結(jié)構(gòu),它定義橢圓的邊界。11. /12. /startAngle:13. /從x軸到弧線的起始點沿順時針方向度量的角(以度為單位)。14. /15. /sweepAngle:16. /從startAngle參數(shù)到弧線的結(jié)束點沿順時針方向度量的角(以度為單位)。17. /18. /異常:19. /System.ArgumentNullException:20. /pen為null。21. publicvoidDrawArc(Penpen,Rectanglerect
27、,floatstartAngle,floatsweepAngle);22. 23. 畫弧線方法DrawArc()的定義參照定義的幫助,可寫出如下畫弧線的代碼:畫弧線示例代碼1. /2. /窗體的Paint事件的響應(yīng)方法3. /4. /當(dāng)前事件觸發(fā)者(當(dāng)前窗體)5. /附帶的事件參數(shù)6. privatevoidFrm_Demo_Paint(objectsender,PaintEventArgse)7. 8. Graphicsgraphics=e.Graphics;9. Penpen=newPen(Color.Blue);10. Rectanglerect=newRectangle(50,50,2
28、00,100);11. graphics.DrawArc(pen,rect,12,84);12. 13. 14. 畫弧線示例代碼上述代碼運行結(jié)果如下:4.3 畫線畫線DrawLine()方法的語法定義如下:DrawLine()語法定義1. /2. /摘要:3. /繪制一條連接兩個System.Drawing.Point結(jié)構(gòu)的線。4. /5. /參數(shù):6. /pen:7. /System.Drawing.Pen,它確定線條的顏色、寬度和樣式。8. /9. /pt1:10. /System.Drawing.Point結(jié)構(gòu),它表示要連接的第一個點。11. /12. /pt2:13. /System.
29、Drawing.Point結(jié)構(gòu),它表示要連接的第二個點。14. /15. /異常:16. /System.ArgumentNullException:17. /pen為null。18. publicvoidDrawLine(Penpen,Pointpt1,Pointpt2);19. /20. /摘要:21. /繪制一條連接兩個System.Drawing.PointF結(jié)構(gòu)的線。22. /23. /參數(shù):24. /pen:25. /System.Drawing.Pen,它確定線條的顏色、寬度和樣式。26. /27. /pt1:28. /System.Drawing.PointF結(jié)構(gòu),它表示要連接
30、的第一個點。29. /30. /pt2:31. /System.Drawing.PointF結(jié)構(gòu),它表示要連接的第二個點。32. /33. /異常:34. /System.ArgumentNullException:35. /pen為null。36. publicvoidDrawLine(Penpen,PointFpt1,PointFpt2);37. /38. /摘要:39. /繪制一條連接由坐標(biāo)對指定的兩個點的線條。40. /41. /參數(shù):42. /pen:43. /System.Drawing.Pen,它確定線條的顏色、寬度和樣式。44. /45. /x1:46. /第一個點的x坐標(biāo)。4
31、7. /48. /y1:49. /第一個點的y坐標(biāo)。50. /51. /x2:52. /第二個點的x坐標(biāo)。53. /54. /y2:55. /第二個點的y坐標(biāo)。56. /57. /異常:58. /System.ArgumentNullException:59. /pen為null。60. publicvoidDrawLine(Penpen,floatx1,floaty1,floatx2,floaty2);61. /62. /摘要:63. /繪制一條連接由坐標(biāo)對指定的兩個點的線條。64. /65. /參數(shù):66. /pen:67. /System.Drawing.Pen,它確定線條的顏色、寬度和
32、樣式。68. /69. /x1:70. /第一個點的x坐標(biāo)。71. /72. /y1:73. /第一個點的y坐標(biāo)。74. /75. /x2:76. /第二個點的x坐標(biāo)。77. /78. /y2:79. /第二個點的y坐標(biāo)。80. /81. /異常:82. /System.ArgumentNullException:83. /pen為null。84. publicvoidDrawLine(Penpen,intx1,inty1,intx2,inty2);85. 86. DrawLine()語法定義根據(jù)定義的幫助,我們以第一種語法 可以寫出如下示例代碼:畫線DrawLine()函數(shù)示例代碼1. /2
33、. /窗體的Paint事件的響應(yīng)方法3. /4. /當(dāng)前事件觸發(fā)者(當(dāng)前窗體)5. /附帶的事件參數(shù)6. privatevoidFrm_Demo_Paint(objectsender,PaintEventArgse)7. 8. Graphicsgraphics=e.Graphics;/創(chuàng)建當(dāng)前窗體的Graphics對象9. Penpen=newPen(Color.Blue);/創(chuàng)建藍(lán)色畫筆對象10. PointpointStart=newPoint(30,30);/創(chuàng)建起始點11. PointpointEnd=newPoint(150,150);/創(chuàng)建結(jié)束點12. graphics.DrawL
34、ine(pen,pointStart,pointEnd);/畫線13. 14. 15. 畫線DrawLine()函數(shù)示例代碼上述代碼運行效果圖如下:4.4 畫橢圓還是先看一下DrawEllipse()畫橢圓的語法定義:畫橢圓方法 DrawEllipse()語法定義1. /2. /摘要:3. /繪制邊界System.Drawing.Rectangle結(jié)構(gòu)指定的橢圓。4. /5. /參數(shù):6. /pen:7. /System.Drawing.Pen,它確定曲線的顏色、寬度和樣式。8. /9. /rect:10. /System.Drawing.Rectangle結(jié)構(gòu),它定義橢圓的邊界。11. /1
35、2. /異常:13. /System.ArgumentNullException:14. /pen為null。15. publicvoidDrawEllipse(Penpen,Rectanglerect);16. /17. /摘要:18. /繪制邊界System.Drawing.RectangleF定義的橢圓。19. /20. /參數(shù):21. /pen:22. /System.Drawing.Pen,它確定曲線的顏色、寬度和樣式。23. /24. /rect:25. /System.Drawing.RectangleF結(jié)構(gòu),它定義橢圓的邊界。26. /27. /異常:28. /System.A
36、rgumentNullException:29. /pen為null。30. publicvoidDrawEllipse(Penpen,RectangleFrect);31. /32. /摘要:33. /繪制一個由邊框(該邊框由一對坐標(biāo)、高度和寬度指定)定義的橢圓。34. /35. /參數(shù):36. /pen:37. /System.Drawing.Pen,它確定曲線的顏色、寬度和樣式。38. /39. /x:40. /定義橢圓的邊框的左上角的X坐標(biāo)。41. /42. /y:43. /定義橢圓的邊框的左上角的Y坐標(biāo)。44. /45. /width:46. /定義橢圓的邊框的寬度。47. /48.
37、 /height:49. /定義橢圓的邊框的高度。50. /51. /異常:52. /System.ArgumentNullException:53. /pen為null。54. publicvoidDrawEllipse(Penpen,floatx,floaty,floatwidth,floatheight);55. /56. /摘要:57. /繪制一個由邊框定義的橢圓,該邊框由矩形的左上角坐標(biāo)、高度和寬度指定。58. /59. /參數(shù):60. /pen:61. /System.Drawing.Pen,它確定曲線的顏色、寬度和樣式。62. /63. /x:64. /定義橢圓的邊框的左上角的X
38、坐標(biāo)。65. /66. /y:67. /定義橢圓的邊框的左上角的Y坐標(biāo)。68. /69. /width:70. /定義橢圓的邊框的寬度。71. /72. /height:73. /定義橢圓的邊框的高度。74. /75. /異常:76. /System.ArgumentNullException:77. /pen為null。78. publicvoidDrawEllipse(Penpen,intx,inty,intwidth,intheight);79. 80. 畫橢圓方法DrawEllipse()語法定義參照上面的語法定義,我們根據(jù)第一種語法,可以寫出如下示例代碼:畫橢圓DrawEllipse
39、()函數(shù)示例代碼1. /2. /窗體的Paint事件的響應(yīng)方法3. /4. /當(dāng)前事件觸發(fā)者(當(dāng)前窗體)5. /附帶的事件參數(shù)6. privatevoidFrm_Demo_Paint(objectsender,PaintEventArgse)7. 8. Graphicsgraphics=e.Graphics;/創(chuàng)建當(dāng)前窗體的Graphics對象9. Penpen=newPen(Color.Blue,100);/創(chuàng)建藍(lán)色粗細(xì)為100的畫筆對象10. Rectanglerect=newRectangle(50,50,200,100);/創(chuàng)建橢圓所在的矩形范圍11. graphics.DrawEllipse(pen,rect);/在指定的范圍內(nèi)畫橢圓12. 13. 14. 畫橢圓DrawEll
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 顧客到店課件
- 順產(chǎn)與剖腹產(chǎn)課件
- 項目級安全教育課件
- 幼兒園教師安全常規(guī)培訓(xùn)
- 光伏車間生產(chǎn)管理培訓(xùn)
- 市政污水管網(wǎng)改造項目經(jīng)濟(jì)效益和社會效益分析報告(參考)
- 城鎮(zhèn)污水管網(wǎng)建設(shè)項目運營管理方案(參考模板)
- 城鎮(zhèn)污水管網(wǎng)建設(shè)工程招投標(biāo)方案(范文模板)
- 無人機航拍圖像處理與優(yōu)化
- 屋面工程質(zhì)量通病防治手冊
- 施工現(xiàn)場信息化管理方案
- 2023-2024年6月廣東省普通高中學(xué)業(yè)水平考試化學(xué)試題及答案
- DB11∕512-2017 建筑裝飾工程石材應(yīng)用技術(shù)規(guī)程
- TSG ZF001-2006《安全閥安全技術(shù)監(jiān)察規(guī)程》
- 滬科版(2024新版)八年級全冊物理第一學(xué)期期末學(xué)情評估測試卷(含答案)
- 高中數(shù)學(xué)課堂情景引入經(jīng)典案例
- 招標(biāo)代理過程中與各方的溝通
- 護(hù)理質(zhì)量改進(jìn)計劃書
- 2014電氣裝置安裝工程低壓電器施工及驗收規(guī)范
- (正式版)JBT 11270-2024 立體倉庫組合式鋼結(jié)構(gòu)貨架技術(shù)規(guī)范
- 中醫(yī)治療失眠課件
評論
0/150
提交評論