VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net教程之重载Windows控件

重载Windows控件
在vb.net中,用户可以根据一个已经存在的控件继承出一个新的Windows控件,假设现在需要一种Text控件,当用tab键移到该控件时,整个Text中的内容都被highlight了,在vb 6.0中,这可以通过编写一个新的Dll动态库,但是Textbox控件在工具箱中被屏蔽掉了,并且失去了Textbox的一些有用的事件。而在vb 7.0中则可以通过继承Textbox类而派生出一个新的类。
下面举一个例子,通过Windows设计环境,建立一个窗体,在这个窗体中有两个Textbox,通过在"Project|Add User Control"菜单给工程加入一个名为"HitextBox.vb"的对象,使这个控件继承TextBox的属性,而不是要自定义一个全新的控件,如下:
Public class HtextBox
Inherits Textbox
下面先编译一下整个工程,新加入的HtextBox控件将会出现在左边的工具栏的底部。用户可以在建立的任何一个Windows窗体中建立一个HtextBox类对象。
在类的代码中,插入如下代码以实现highlight的功能:当你用Tab键移到Textbox时,Textbox的全部内容变为hightlight。
Public class HttextBox
   Inherits Textbox
   Public Sub New
      Mybase.New
   'Add Event event handler
   AddHandler Enter,_
      New System.EventHandler(AddressOf_
                   Me.Ht_Enter)
      End Sub
   '----------------
   'Enter event handler is inside the class
   Protected Sub Ht_Enter(Byval sender as Object,_
             Byval e as System.EventArgs)
      Me.selectionStart=0
      Me.selectionLength=Me.text.length
   End Sub
End Class
这就是所有的过程,通过添加大概10行代码就做出了一个继承Windows控件派生出来的控件。

相关教程