科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件用VB.NET设计各种形状的窗体界面

用VB.NET设计各种形状的窗体界面

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文的主要内容就是探讨一下各种不规则窗体的实现过程

作者:马金虎 来源:天极网 2007年11月9日

关键字: vb.net 设计 窗体

  • 评论
  • 分享微博
  • 分享邮件
窗体是程序设计最常见,最普通,也是最容易受到程序员忽视的编程对象。一般来说,在Visual Basic .Net针对窗体的编程是不需要人为介入的,因为可视化编程工具Visual Studio .Net已经按照窗体的缺省状态实现了。但是在最近遇到的应用程序中。我们发现越来越多的应用程序中使用到各种不同规则的窗体,这些不同规则的窗体给应用程序带来异常的情趣和不同平常的效果的同时,也促使使用者思考这样一个问题,如何创建这些窗体?在Visual Basic .Net中提供了一种简单、直接创建不规则窗体的方法,本文的主要内容就是探讨一下这些方法具体的实现过程。下面就来详细介绍在Visual Basic .Net中实现五种不同规格窗体的方法,即:椭圆形、扇形、圆形、环形和三角形。掌握了这五种不同形状窗体的实现方法后,我想对于其他规则的窗体就不应该有什么问题了。

  Visual Basic .Net中创建、使用MDI窗体也是本文的重要内容之一,MDI是Multi Document Interface的简称,即:多文档界面,MDI最早出现于Windows 2.0中,最先使用到MDI的应用程序是Excel电子表格。为了方便使用者同时能够操作多份电子表格,Excel就采用了MDI来解决这个问题。到了Windows3.1中,MDI在应用程序中得到了更大范围的应用。其中Windows 3.1中的程序管理器和文件管理器都采用了MDI。目前MDI在应用程序中依然被广泛采用。下面就首先来介绍一下Visual Basic .Net创建不规则窗体的相关知识和具体实现方法。

  一.简介Visual Basic .Net中定制不规则窗体时使用的类库:

  Visual Basic .Net中定制不规则窗体主要使用到Region类和GraphicsPath类,其中以GraphicsPath类最为重要。GraphicsPath类和Region类分别位于.Net FrameWork SDK中的"System.Drawing.Drawing2D"命名空间和"System.Drawing"命名空间。在Visual Basic .Net中具体实现各种不规则窗体的过程中,GraphicsPath主要作用是根据程序员的要求,通过GraphicsPath中提供的方法绘制不同规则的形状。Region的主要作用是依靠GraphicsPath实例来初始化Region对象,从而形成不规则窗体。

  其具体的实现过程是,首先通过GraphicsPath类构造函数创建GraphicsPath实例,然后通过GraphicsPath中提供的方法按照程序员的要求绘制形状,最后以GraphicsPath实例来初始化Region对象。完成不规则窗体。可见了解、掌握GraphicsPath类对于理解本文介绍的实现方法是非常必要的。表01和表02分别是GraphicsPath类的常用方法和常用属性及其说明:

方法 说明
AddArc GraphicsPath向当前图形追加一段椭圆弧。
AddBezier GraphicsPath向当前图形添加一段立方贝塞尔曲线。
AddBeziers GraphicsPath向当前图形添加一系列相互连接的立方贝塞尔曲线。
AddClosedCurve GraphicsPath向此路径添加一个闭合曲线。由于曲线经过数组中的每个点,因此使用基数样条曲线。
AddCurve GraphicsPath向当前图形添加一段样条曲线。由于曲线经过数组中的每个点,因此使用基数样条曲线。
AddEllipse GraphicsPath向当前路径添加一个椭圆。
AddLine GraphicsPath向此GraphicsPath实例追加一条线段。
AddLines GraphicsPath向此GraphicsPath实例末尾追加一系列相互连接的线段。
AddPath 将指定的GraphicsPath实例追加到该路径。
AddPie GraphicsPath向此路径添加一个扇形轮廓。
AddPolygon GraphicsPath向此路径添加多边形。
AddRectangle GraphicsPath向此路径添加一个矩形。
AddRectangles GraphicsPath向此路径添加一系列矩形。
AddString GraphicsPath向此路径添加文本字符串。
ClearMarkers 清除此路径的所有标记。
Clone 创建此路径的一个精确副本。
CloseAllFigures 闭合此路径中所有开放的图形并开始一个新图形。它通过连接一条从图形的终结点到起始点的直线,闭合每一开放的图形。
CloseFigure 闭合当前图形并开始新的图形。如果当前图形包含一系列相互连接的直线和曲线,该方法通过连接一条从终结点到起始点的直线,闭合该环回。
Flatten GraphicsPath将此路径中的各段曲线转换成相连的线段序列。
GetBounds GraphicsPath返回限定此GraphicsPath实例的矩形。
GetLastPoint 获取此GraphicsPath实例PathPoints数组中的最后的点。
IsOutlineVisible GraphicsPath指示当使用指定的Pen对象绘制此GraphicsPath实例时,指定点是否包含在后者的轮廓内。
IsVisible GraphicsPath指示指定点是否包含在此GraphicsPath实例内。
Reset 清空PathPoints和PathTypes数组并将FillMode设置为Alternate。
Reverse 反转此GraphicsPath实例的PathPoints数组中各点的顺序。
SetMarkers 在此GraphicsPath实例上设置标记。
StartFigure 不闭合当前图形即开始一个新图形。后面添加到该路径的所有点都被添加到此新图形中。
Transform 将变形矩阵应用到此GraphicsPath实例。
Warp GraphicsPath对此GraphicsPath实例应用由一个矩形和一个平行四边形定义的扭曲变形。
Widen GraphicsPath在用指定的画笔绘制此路径时,用包含所填充区域的曲线代替此路径。
AddArc GraphicsPath向当前图形追加一段椭圆弧。
AddBezier GraphicsPath向当前图形添加一段立方贝塞尔曲线。
             表01:GraphicsPath类的常用方法及其说明

  在本文用Visual Basic .Net实现的椭圆形、扇形、圆形、环形和三角形等形状窗体中就使用到GraphicsPath中的AddEllipse方法(绘制椭圆形)、AddPie方法(绘制扇形)、AddLine方法(绘制直线)等方法。GraphicsPath中提供了丰富的方法,这对实现更复杂的窗体形状是非常有用的,但完全掌握这些方法的使用方法也需要花费大量的时间和精力。

属性 说明
FillMode 获取或设置一个FillMode枚举,它确定此
PathData 获取一个PathData对象,它封装此GraphicsPath实例的点(points)和类型(types)的数组。
PathPoints 获取路径中的点。
PathTypes 获取PathPoints数组中相应点的类型。
PointCount 获取PathPoints或PathTypes数组中的元素数。
           表02:GraphicsPath类中的常用属性及其说明
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章