设为首页   |  加入收藏夹 快速导航:  热门文章  |  最新文章  |  梦想博客  
当前位置:编程之家 -> 文章频道 ->asp.net 
站内搜索:  

用VB.NET设计各种形状的窗体界面一(2)

作者:佚名 来源:linux宝库 整理日期:2007-03-20

  二.Visual Basic .Net中定制不规则窗体的具体步骤:
  正如前文所说在Visual Basic .Net定制不同规则的窗体是比较容易的,再了解了上面内容后,下面就是在Visual Basic .Net实现椭圆形、扇形、圆形、环形和三角形等五种形状窗体的具体实现步骤:
  
  1. 启动Visual Studio .Net。
  
  2. 选择菜单【文件】|【新建】|【项目】后,弹出【新建项目】对话框。
  
  3. 将【项目类型】设置为【Visual Basic项目】。
  
  4. 将【模板】设置为【Windows应用程序】。
  
  5. 在【名称】文本框中输入【VB.NET中定制不规则窗体】。
  
  6. 在【位置】的文本框中输入【E:\VS.NET项目】,然后单击【确定】按钮,这样在"E:\VS.NET项目"目录中就产生了名称为"VB.NET中定制不规则窗体"的文件夹,并在里面创建了名称为"VB.NET中定制不规则窗体"的项目文件。具体如图01所示:
  
 

  
图01:【VB.NET中定制不规则窗体】新建项目对话框

  7. 把Visual Studio .Net的当前窗口切换到【Form1.vb(设计)】窗口,并从【工具箱】中的【Windows窗体组件】选项卡中往Form1窗体中拖入下列组件,并执行相应的操作:
  
  五个Button组件,用以定制五种不同形状窗体,并在这个Button组件拖入Form1的设计窗体后,双击它们,则系统会在Form1.vb文件分别产生这五个组件的Click事件对应的处理代码。
  
  4. 在上述组件拖入窗体后,分别按照图02所示排列并设置窗体中的各组件:
  
 

  
图02:【VB.NET中定制不规则窗体】项目的设计界面

  8. 把Visual Basic .Net当前窗口切换到Form1.vb的代码编辑窗口,并用下列代码替换Form1.vb中的Button1的Click事件对应的处理代码,下列代码功能是改变当前窗体形状为椭圆形:
  
  Private Sub Button1_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button1.Click
  Dim p As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath ( )
  Dim Width As Integer = Me.ClientSize.Width
  Dim Height As Integer = Me.ClientSize.Height
  p.AddEllipse ( 0 , 20 , Width - 50 , Height - 100 )
  根据要绘制椭圆的形状来填写AddEllipse方法中椭圆对应的相应参数
  Region = New Region ( p )
  End Sub
  
  9. 用下列代码替换Form1.vb中的Button2的Click事件对应的处理代码,下列代码功能是改变当前窗体形状为扇形:
  
  Private Sub Button2_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button2.Click
  Dim p As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath ( )
  p.AddPie ( 10 , 10 , 250 , 250 , 5 , 150 )
  根据要实现的扇形形状来填写AddPie方法中的相应参数
  Me.Region = New Region ( p )
  End Sub
  
  10. 用下列代码替换Form1.vb中的Button3的Click事件对应的处理代码,下列代码功能是改变当前窗体形状为圆形:
  
  Private Sub Button3_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button3.Click
  Dim p As System.Drawing.Drawing2D.GraphicsPath = New  System.Drawing.Drawing2D.GraphicsPath ( )
  Dim Width As Integer = Me.ClientSize.Width
  Dim Height As Integer = Me.ClientSize.Height
  p.AddEllipse ( 0 , 0 , Height , Height )
  Me.Region = New Region ( p )
  圆形即是椭圆的一种特例,
  End Sub
  11. 用下列代码替换Form1.vb中的Button4的Click事件对应的处理代码,下列代码功能是改变当前窗体形状为环形:
  
  Private Sub Button4_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button4.Click
  Dim p As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath ( )
  Dim Height As Integer = Me.ClientSize.Height
  Dim width As Integer = 100
  p.AddEllipse ( 0 , 0 , Height , Height )
  p.AddEllipse ( width , width , Height - ( width * 2 ) , Height - ( width * 2 ) )
  根据环形的形状来分别填写AddEllipse方法中相应的参数
  Me.Region = New Region ( p )
  End Sub
  
  12. 用下列代码替换Form1.vb中的Button5的Click事件对应的处理代码,下列代码功能是改变当前窗体形状为三角形:
  
  Private Sub Button5_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button5.Click
  Dim p As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath ( )
  p.AddLine ( 0 , 0 , 250 , 150 )
  p.AddLine ( 250 , 150 , 0 , 300 )
  p.AddLine ( 0 , 0 , 0 , 300 )
  根据三角形的形状特征来分别填写AddLine方法中相应的参数
  Me.Region = New Region ( p )
  End Sub
  
[1]  [2]  [3]