人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

用SetStyle辦法重繪你的窗體

用SetStyle辦法重繪你的窗體

更新時(shí)間:2022-07-07 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

鮮為人知的SetStyle方法可以讓你控制重繪一個(gè)窗體的方式。
by Ken Getz
注:Ken Getz在Orlando的VSLive!上同Brian Randell一起舉辦了一個(gè)主題為“Build a Rich Client App with Visual Studio .NET”的研討會(huì)。本篇技巧選自該研討會(huì)的資料。
運(yùn)用GDI+和Windows窗體,我們可以很容易地創(chuàng)建一個(gè)漸變色(gradient)來填充一個(gè)區(qū)域。運(yùn)用.NET Framework提供的簡單的方法,你可以創(chuàng)建linear gradients(線型漸變填充)或path gradients(路徑漸變填充)。然而,真正的問題是這些復(fù)雜的背景圖形是資源密集型(resource-intensive)的。最近,我正在做一個(gè)模擬的時(shí)鐘演示程序,用一個(gè)漸變色來填充鐘面。每一秒,當(dāng)時(shí)鐘重繪它的鐘面來顯示時(shí)鐘指針的正確位置時(shí),它也重繪了整個(gè)背景漸變色。即使在一臺(tái)很快的機(jī)器上,這種方法也并不很好。我將向你介紹SetStyle方法,它可以讓你指定如何、何時(shí)來重繪你的窗體。
首先,用下面的代碼做試驗(yàn),你可以從中得到一些著色變換的樂趣。修改一個(gè)新窗體的Paint事件使它包含該代碼:

Private Sub frmMain_Paint( _ ByVal sender As Object, _ ByVal e As PaintEventArgs) _ Handles MyBase.PaintDim path As New GraphicsPath()Dim pt As New PointF()Dim rct As Rectangle = Me.ClientRectanglepath.AddRectangle(rct)Dim pgb As New PathGradientBrush(path)pt = New PointF( _ CType(Me.ClientSize.Width / 2, Single), _ CType(Me.ClientSize.Height / 2, Single))pgb.CenterPoint = ptDim Colors() As Color = _ {Color.Red, Color.Orange, Color.Yellow, _ Color.Green, _ Color.Blue, Color.Indigo, Color.Violet}Dim Positions() As Single = _ {0.0, 0.1, 0.2, 0.4, 0.6, 0.8, 1}Dim cb As ColorBlend = New ColorBlend()cb.Colors = Colorscb.Positions = Positionspgb.InterpolationColors = cbe.Graphics.FillRectangle(pgb, rct)Dim f As New StringFormat()f.Alignment = StringAlignment.Centere.Graphics.DrawString( _ Date.Now.ToLongTimeString, _ New Font("Tahoma", 13), Brushes.White, pt, f)End Sub

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 嘉义市| 吉安县| 通许县| 新蔡县| 横峰县| 龙泉市| 阳山县| 温泉县| 洛川县| 梁河县| 临泉县| 藁城市| 松溪县| 平遥县| 诸城市| 大宁县| 宁夏| 图木舒克市| 静安区| 台湾省| 阿勒泰市| 云和县| 丰县| 正安县| 墨江| 乌兰浩特市| 三亚市| 油尖旺区| 新民市| 延庆县| 兴海县| 银川市| 永川市| 民乐县| 班戈县| 社旗县| 佳木斯市| 梨树县| 金堂县| 永泰县| 桓仁|