排行
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
中国数据库
向量数据库
时序数据库
实时数据库
搜索引擎
空间数据库
图数据库
数据仓库
大调查
2021年报告
2022年报告
年度数据库
2020年openGauss
2021年TiDB
2022年PolarDB
2023年OceanBase
首页
资讯
活动
大会
学习
课程中心
推荐优质内容、热门课程
学习路径
预设学习计划、达成学习目标
知识图谱
综合了解技术体系知识点
课程库
快速筛选、搜索相关课程
视频学习
专业视频分享技术知识
电子文档
快速搜索阅览技术文档
文档
问答
服务
智能助手小墨
关于数据库相关的问题,您都可以问我
数据库巡检平台
脚本采集百余项,在线智能分析总结
SQLRUN
在线数据库即时SQL运行平台
数据库实训平台
实操环境、开箱即用、一键连接
数据库管理服务
汇聚顶级数据库专家,具备多数据库运维能力
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
我的订单
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
资讯
活动
大会
课程
文档
排行
问答
我的订单
首页
专家团队
智能助手
在线工具
SQLRUN
在线数据库即时SQL运行平台
数据库在线实训平台
实操环境、开箱即用、一键连接
AWR分析
上传AWR报告,查看分析结果
SQL格式化
快速格式化绝大多数SQL语句
SQL审核
审核编写规范,提升执行效率
PLSQL解密
解密超4000字符的PL/SQL语句
OraC函数
查询Oracle C 函数的详细描述
智能助手小墨
关于数据库相关的问题,您都可以问我
精选案例
新闻资讯
云市场
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
专家团队
智能助手
精选案例
新闻资讯
云市场
微信扫码
复制链接
新浪微博
分享数说
采集到收藏夹
分享到数说
首页
/
窗体的加载、卸载及点击事件
窗体的加载、卸载及点击事件
VBA语言専攻
2021-11-18
174
【分享成果,随喜正能量】如果我们总在等待绝对的一切就绪,那我们将永远无法开始;平凡的我在人多的地方曾极力小心翼翼,但不知从何起,我不太在意别人的目光了。比起被人觉得是个怪人,我现在更害怕浪费时间;你那么憎恨那些人,跟他们斗了那么久,最终却变得和他们一样,人世间没有任何理想值得以这样的沉沦作为代价;每个人都会有一段异常艰难的时光,生活的压力,工作的失意,学业的压力,爱的惶惶不可终日,挺过来的,人生就会豁然开朗,挺不过来的,时间也会教你,怎么与它们握手言和,所以不必害怕的。
《V
BA
之Excel应用》是非常经典的,是我推出的第七套教程,定位于初级。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用E
XCEL
工作过程中需要掌握的知识点,希望大家能掌握利用。今日讲解的内容是“
VBA
之E
XCEL
应用”的第十六章“用户窗体(Userform)对象”的第
5
节:窗体的加载、卸载及点击事件
第五节 窗体事件的响应
大家好,我们在前面讲解了窗体的事件,在这讲中我们再次利用一个实例讲解一下窗体对事件的响应过程。这次讲解的是窗体的单击事件,在点击事件过程中,让窗体改变大小及背景色。
1
窗体的搭建及思路分析
在VBE窗口插入一个新的窗体UserForm2,这个窗体将响应点击事件。如下界面:
对于这个窗体,我们先不做属性的任何设置,要在代码中加以设置。我们将改变的设置有:窗体的Height,Width这两个属性将改变窗体的大小;BackColor这个属性将改变窗体的背景颜色。由于要在窗体的单击事件中改变上面的三个属性,所以我们将利用随机数来改变上述三个值。
为了能明显地显示窗体的大小,我们还会利用到窗体的Resize事件,在这个事件中会反馈窗体的大小。
窗体的加载和卸载。在前面的讲解中讲过窗体的加载过程中首先执行的是Initialize事件,这个事件中要初始化窗体的一些属性设置。窗体的卸载过程:QueryClose事件,这个事件在窗体的关闭之前执行,我们要在这个事件中提示给用户事件的进程;Terminate事件,这个事件是窗体卸载的最后的一个事件,将释放内存。
2
窗体对点击事件的响应代码及代码解读
看下面的代码:
Private Sub UserForm_Click()
代码略,见教程
Private Sub UserForm_Initialize()
代码略,见教程
End Sub
Private Sub UserForm_Resize()
代码略,见教程
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
代码略,见教程
End Sub
Private Sub UserForm_Terminate()
代码略,见教程
End Sub
代码截图:
代码解读:
1)
Private Sub UserForm_Click()
Me.Height = Int(Rnd * 200) + 100
Me.Width = Int(Rnd * 200) + 100
Me.BackColor = RGB(Int(Rnd * 100), Int(Rnd * 200), Int(Rnd * 300))
End Sub
上述是窗体的点击事件,这个事件中将改变窗体的
Height
,
Width
,
BackColor
属性,由于要使每次点击窗体产生不同的属性设置,我们用的是随机数解决。
2)Private Sub UserForm_Initialize()
Me.Caption = "窗体"
Me.BackColor = RGB(Int(Rnd * 100), Int(Rnd * 100), Int(Rnd * 100))
End Sub
这是窗体的加载事件,这个事件中设置了窗体的
Caption
,
BackColor
属性。
3
)
Private Sub UserForm_Resize()
msg = "宽: " & Me.Width & Chr(10) & "高: " & Me.Height
MsgBox prompt:=msg, Title:="Resize事件"
End Sub
以上是窗体的
Resize
事件,这个事件总提示给用户窗体的大小
4
)
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
msg = "现在卸载 " & Me.Caption
MsgBox prompt:=msg, Title:="QueryClose事件"
End Sub
以上事件是在窗体的关闭前发生,仍是提示用户卸载窗体
5) Private Sub UserForm_Terminate()
msg = "现在卸载 " & Me.Caption
MsgBox prompt:=msg, Title:="Terminate事件"
End Sub
以上是窗体的卸载事件,这个事件中将释放内存。
l
Me是一个在用户窗体的代码模块中指定该用户窗体的快捷方式,例如,Me. Height表示当前用户窗体的高度
3
窗体对点击事件响应的代码执行效果
我们点击工作表窗口的运行按钮,这时会弹出用户窗体:
此时我们点击窗体:
我们点击关闭按钮:
至此,整个过程完毕。
今日内容回向:
1) 窗体的初始化在什么事件中完成?
2) 窗体的卸载过程中,什么时候内存释放?
窗体
sub
文章转载自
VBA语言専攻
,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
领墨值
有奖问卷
意见反馈
客服小墨