27
Январь
2009
Как скрыть показать часы в трее?
Как скрыть показать часы в трее?
Option Explicit
'Функция для поиска окна первого уровня
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
'Функция для поиска окна дочернего
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" _
(ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, _
ByVal lpsz2 As String) As Long
'Функция скрывает / показывает окно
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, _
ByVal nCmdShow As Long) As Long
'Процедура для скрытия часиков
Private Sub HideClocks()
Dim hnd As Long
'Ищем манипулятор панели задач
'(класс панели задач: Shell_TrayWnd)
hnd = FindWindow("Shell_TrayWnd", vbNullString)
'Ищем манипулятор трея
'(класс трея: TrayNotifyWnd)
hnd = FindWindowEx(hnd, 0, "TrayNotifyWnd", vbNullString)
'Ищем манипулятор часиков
'(класс часиков: TrayClockWClass)
hnd = FindWindowEx(hnd, 0, "TrayClockWClass", vbNullString)
'Скрываем часики
ShowWindow hnd, 0
''Показываем часики
'ShowWindow hnd, 1
End Sub
Private Sub Form_Load()
HideClocks
End Sub