在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控件派生出来的控件。
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索windows
, 控件
, 窗体
, 代码
, textbox
一个
qt 重载控件、windows安全控件、windows安全控件下载、windows窗体控件库、windows控件,以便于您获取更多的相关知识。