使用系统托盘& VBA中的图标(Access)

时间:2010-03-08 15:09:58

标签: winapi ms-access vba windows-shell systray

我找到了一些教程,解释了如何使用Windows API在系统托盘中获取自定义图标。

这些都适用于Visual Basic,它们似乎没有很好地扩展到VBA。

我正在关注这个简短的教程: http://atchoo.org/vb/systray.php

基本上,您必须设置hIcon值('long'变量),但它不起作用。 我试过使用LoadPicture()函数,它不会给我任何错误,但也无法添加新图标。

我无法提供Me.Icon,也无法在Form_Load上设置它。

有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:3)

使用loadpicture是正确的方法,但不是直接的。 我必须首先定义一个新变量,然后加载它。

像这样:

Dim myPicture As IPictureDisp
strPath = "F:\Databank\Icons\stone.ico"
Set myPicture = LoadPicture(strPath)

然后,在某个地方,我可以毫无问题地设置hIcon:

.hIcon = myPicture

当我更改trayicon时(比如添加气球提示),我也必须再次提供图标信息。