| 网站首页 | 技术文章 | 下载频道 | 博客 | 编程论坛 |
 
| 技术教程首页 | 开发语言 | WEB开发 | .NET技术 | 数据库 | 操作系统 | 网页制作 |
 
 
您现在的位置: 编程中国 >> 技术教程 >> .NET技术 >> VB.NET >> VB.NET技术资料 >> 正文
  ►  一步一步创建Visual Basic .NET 控件
一步一步创建Visual Basic .NET 控件
作者:未知    阅读人次:……    文章来源:不详    发布时间:2004/10/8    网友评论()条
 
  摘要:本月 Billy Hollis 将向您介绍如何从头创建可呈现其特有界面的可视控件。

  我从来没有真正想过要当一名 C++ 程序员,因为我太懒了,不能那么辛苦地工作。但我必须承认,我过去常常嫉妒那些 C++ 程序员,嫉妒他们编写可视控件的能力。

  Visual Basic® 6.0 及其早期版本中的控件仅限于“复合”控件(由其他控件组成的控件),这种控件称为 UserControl。在 Visual Basic 6.0 中编写能够在屏幕上呈现其特有可视外观的控件几乎是不可能的。

  现在好了,可以使用功能强大的 Visual Basic .NET 编写各种类型的可视控件了!不仅可以编写复合的 UserControl,还能继承现有的控件(如 TextBox)并扩展其新功能。更重要的是,还可以从头编写能够呈现其特有界面的可视控件。

  在本文中,我将从头创建一个完整的可视控件,以说明 Visual Basic .NET 的后一种功能。该控件是一个“红绿灯”- 一个包含三个圆(分别代表红、黄、绿三个灯)的矩形。图 1 显示各个灯亮时该控件的外观,控件的背景颜色设置为系统颜色 ControlDark

  图 1:带有三个 TrafficLight 控件的窗体,每个控件亮不同的灯。

  我们称它为 TrafficLight 控件,它可以通过代码或让用户单击灯来改变亮起的灯。

  因为 TrafficLight 是一个可视的 Windows 窗体控件,它将继承 S  ystem.Windows.Forms 命名空间中的 Control 类。这样,它将具有很多预定义的属性、方法和事件,包括控制其外观的属性,如 ForeColorBackColorSizeLocation;还包括事件,如 MouseOverClick。您可以查看 .NET 文档,获得 Control 类成员的完整列表。

  红绿灯也需要具有特殊的属性和事件,如下所示:

Status 属性 确定亮起哪种颜色的灯。必须为以下三个枚举值之一:
  • StatusRed:红灯亮
  • StatusYellow:黄灯亮
  • StatusGreen:绿灯亮
BorderWidth 属性 红绿灯周围边框的宽度。
StatusChanged 事件 当通过代码或由用户单击不同的灯改变 Status 属性的值时,触发该事件。

  由于这些成员不属于 Control 基类,所以我们需要包括完整的代码以处理它们。我们还需要绘制边框和三个相应颜色的灯的代码,以便在屏幕上绘制红绿灯。最后,我们需要处理用户单击圆以更改亮起灯的操作,并在更改亮起的灯时更改 Status 属性。

  为了使本示例尽可能接近实际应用环境,我们还将包括能够确保在 Visual Studio® .NET IDE 中更好地使用控件的代码。我们为工具箱设置适当的图标,并包括能够使属性更好地与各属性窗口集成的逻辑。

  现在让我们开始吧。

  第 1 步:创建类型正确的项目

  要创建一个保存 Windows 窗体控件的库,需要在 Visual Basic.NET 中启动一个新项目,选择 Windows Control Library(Windows 控件库)项目类型,然后将项目命名为 MyControls

  所创建的项目实际上可以保存多个 Windows 窗体控件,每个控件都属于其各自的类,但我们只需在其中创建一个控件。

[1] [2] [3] [4] [5] [6] [7] [8] 下一页

 

 
文章录入:静夜思    责任编辑:静夜思 
  • 上一篇文章:

  • 下一篇文章:

  •  
    相关文章
    原创地带
    24小时热门帖子