|
Как разместить иконку программы в TrayBar |
|
|
Вам необходимо добавить модуль 'КОД МОДУЛЯ
Declare Function Shell_NotifyIconA Lib "SHELL32"
(ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Integer
Public Const NIM_ADD = 0
Public Const NIM_MODIFY = 1
Public Const NIM_DELETE = 2
Public Const NIF_MESSAGE = 1
Public Const NIF_ICON = 2
Public Const NIF_TIP = 4
Type NOTIFYICONDATA
cbSize As Long
hWnd As Long
uID As Long
uFlags As Long
uCallbackMessage As Long
hIcon As Long
szTip As String * 64
End Type
Public Function SetTrayIcon(Mode As Long, hWnd As Long, Icon As Long, tip As String) As
Long
Dim nidTemp As NOTIFYICONDATA
nidTemp.cbSize = Len(nidTemp)
nidTemp.hWnd = hWnd
nidTemp.uID = 0&
nidTemp.uFlags = NIF_ICON Or NIF_TIP
nidTemp.uCallbackMessage = 0&
nidTemp.hIcon = Icon
nidTemp.szTip = tip & Chr$(0)
SetTrayIcon = Shell_NotifyIconA(Mode, nidTemp)
End Function
'КОД ФОРМЫ
'Затем уже в событиях формы вы можете
пользоваться вышеприведеными API-функциями.
'Запустите программу. Иконка появится в трее.
Наведите на нее курсор, и вы увидите
'надпись "Проверка", теперь кликните в любом
месте формы и снова наведите на иконку...
Private Sub Form_Click()
SetTrayIcon NIM_MODIFY, Me.hWnd, Me.Icon, "Работает? Работает!"
End Sub
Private Sub Form_Load()
SetTrayIcon NIM_ADD, Me.hWnd, Me.Icon, "Проверка"
End Sub
Private Sub Form_Unload(Cancel As Integer)
SetTrayIcon NIM_DELETE, Me.hWnd, 0&, ""
End Sub
|
|
|
|
|
|
|