作者:绿色风
分类:
时间:2022-08-18
浏览:142
楼主 fangjianp |
Q:如何封装 Windows API 函数及相关常量? A:Windows API 的所有函数中,只有极少几个函数(如:GetSystemMetrics )可以不要封装就可直接使用,绝大多数 Windows API 函数都必须封装后才能在 VBA 中使用。即使是那些不要封装就可直接使用的 Windows API 函数,由于封装后会使得使用它更为方便,所以在 VBA 中对于 Windows API 函数一般都会使用封装技术。 下面的代码说明了如何对 Windows API 函数及其相关常量进行封装:
- '在模块顶部声明所有将要使用的Windows API 函数及其常量
- Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
- Private Const SM_CXSCREEN As Long = 0
- Private Const SM_CYSCREEN As Long = 1
- '用枚举类型方法封装 API 中的常量
- '以便使用时会出现智能下拉框
- Public Enum SystenMetricsConstants
- smScreenWidth = SM_CXSCREEN
- smScreenHeight = SM_CXSCREEN
- End Enum
- '封装GetSystenmetrics API 函数,使用SystenMetricsConstants枚举常量
- Public Function SystemMetrics(ByVal uIndex As SystenMetricsConstants) As Long
- SystemMetrics = GetSystemMetrics(uIndex)
- End Function
这是枚举类型常量智能下拉框示例 |
2楼 水星钓鱼 |
封装常量还得知道这些常量具体代表什么意思呢 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一