冻梨网文本框事件(利用类方法)

文本框事件(利用类方法)

文本框事件(利用类方法)

大家好,今天继续讲解类的方法和事件。到这一讲,我们基本已经了解了如何利用类,如何利用类的事件。

如果想利用类,必须在类模块中建立类,类的名称是可以改为自己需要的形式;建立类后还要实例化类,把类转化为一个相对的实体对象,如果不对类进行实例化,是没有任何意义的;一般情况下,可以在窗体的构建中进行类的实例化;如果要让这个实体对象响应类的事件,那么要在类的声明中进行对象的声明,在类模块中进行事件的响应,在窗体模块中进行对象的必要关联。

下面仍是以实例为基础,进行类模块实际问题的讲解。

实例:在窗体中,让每一个文本框在激活时发生颜色的改变。

思路的分析:让窗体中的文本框关联上同一个类,可以执行统一的类事件。在窗体中把必要的文本框和这个类及将执行响应的类事件进行关联。

实现过程:

一 搭建类模块及类事件

我们建立一个类模块mytebox.并在类模块中声明一个响应事件的对象Mbox,作为我们要干预文本框的一个对象集合。



Public WithEvents mBOX As MSForms.TextBox

Private Sub mBOX_Change()

m = mBOX.Text

If m = "" Then m = 0

If m > 100 Then

MsgBox ("已经超过100"): DoEvents

End If

End Sub

Private Sub mBox_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

For i = 2 To 4

With UserForm7.Controls("TextBox" & i)

.ForeColor = 0 '(黑色)

.BackColor = 16777215 ' (白色)

TT = .Text

End With

Next

mBOX.BackColor = 16711680 ' (蓝色)

mBOX.ForeColor = 16777215 '白色

End Sub

1 在上述代码中Public WithEvents mBOX As MSForms.TextBox是对要响应类对象事件的对象进行了声明。

2 上面的对象共有两个事件,其一是mBOX_Change其二是mBox_MouseDown。

3 我们先看第一个事件mBOX_Change。当对象发生改变时,将执行下面的操作:

m = mBOX.Text

If m = "" Then m = 0

If m > 100 Then

MsgBox ("已经超过100"): DoEvents


首先要把mBOX.Text的值提起出来,进行判断,如果是空值按0处理,如果是大于100将进行提示,已经超过100.

4 mBox_MouseDown过程。

For i = 2 To 4

With UserForm7.Controls("TextBox" & i)

.ForeColor = 0 '(黑色)

.BackColor = 16777215 ' (白色)

TT = .Text

End With

Next

mBOX.BackColor = 16711680 ' (蓝色)

mBOX.ForeColor = 16777215 '白色

对于textbox的第2到第4个,首先把每个文本框进行初始化,然后对于激活状态的文本框进行着色设置。背景为蓝色,前景为白色。

运行初始化时的窗体的界面:


今日内容回向:

1 类的事件是如何被对象响应的?

2 类事件被声明后,如何才能应用?

(待续)

--百思特网------------------------------------------------------------------------------------------------------------------------------

学习有用的东西需要一种不知足的精神,知道什么是自己所需要的,不要蜷缩在一小块自认为天堂的世界百思特网里。待到暮年时再去做自欺欺人的言论。要努力提高自己,有一颗充满生机的心灵,把握现在,这才是进取。越是有意义的事情,困难会越多。愿力决定始终,智慧决定成败。不管遇到什么,都是风景。看淡纷争,看轻得失。茶,满也好,少也好,不要计较;浓也好,淡也好,其中自有值得品的味道。去感悟真实的时间,静下心,多学习,积累福报。而不是天天混日子,也不是天天熬日子。在后疫情更加严峻的存量残杀世界中,为自己的生存进行知识的储备,特别是新知识的储备。

VBA是利用Office实现自己小型办公自动化的有效手段,我根据自己20多年的VBA实际利用经验,现在推出了五部VBA教程。第一:VBA代码解决方案,是VBA中各个知识点的讲解,覆盖绝大多数的VBA知识点;第二:VBA数据库解决方案,是数据处理的专业利器,详细的介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作。第三:VBA数组与字典解决方案,讲解VBA中的数组和字典的利用。字典是VBA代码水平提高的手段,值得深入的学习。第四:VBA代码解决方案之视频,是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。第五:VBA中类的解读和利用,是一部高级教程,对于自己理论的提高很有益处。上述教程可以根据1,3,2,5或者是4,3,2,5的顺序逐渐深入的学习和利用。

在取代OFFICE新百思特网的办公软件没有到来之前,谁能在数据处理方面做到极致,谁就是王者。其中登峰至极的技能非VBA莫属!


本站除标明"本站原创"外所有图文版权归创作人所有,如有冒犯,请直接联系冻梨网,我们将立即予以纠正并致歉!转载请注明出处:文本框事件(利用类方法)https://www.donglinet.com.cn/373332.html