SysTray

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

SysTray

Сообщение Ramzes » 20.04.2003 (Вс) 11:26

Помогите свернуть программу в 'Tray' к часикам :P

John_mc
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 112
Зарегистрирован: 15.06.2002 (Сб) 6:18
Откуда: Russia, Новосибирск

Сообщение John_mc » 20.04.2003 (Вс) 11:57

8) Создай модуль:

Public Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean

Public Const NIM_ADD = 0
Public Const NIM_MODIFY = 1
Public Const NIM_DELETE = 2

Public Const WM_MOUSEMOVE = &H200
Public Const NIF_MESSAGE = 1
Public Const NIF_ICON = 2
Public Const NIF_TIP = 4

Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202
Public Const WM_LBUTTONDBLCLK = &H203

Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_RBUTTONDBLCLK = &H206

Public Const WM_MBUTTONDOWN = &H207
Public Const WM_MBUTTONUP = &H208
Public Const WM_MBUTTONDBLCLK = &H209

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

В форме объяви:

Dim nid As NOTIFYICONDATA


Использование:

На форме, в процедуру события Form_MouseMove вставь следующий код

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim msg As Long
Dim sFilter As String

msg = X / Screen.TwipsPerPixelX
Select Case msg
Case WM_LBUTTONDOWN
'Здесь можете вставить тот код который вы хотите.
Case WM_LBUTTONUP
'Здесь можете вставить тот код который вы хотите.
Case WM_LBUTTONDBLCLK
'Здесь можете вставить тот код который вы хотите.
Case WM_RBUTTONDOWN
'Здесь можете вставить тот код который вы хотите.
'Например PopupMenu
Case WM_RBUTTONUP
'Здесь можете вставить тот код который вы хотите.
Case WM_RBUTTONDBLCLK
'Здесь можете вставить тот код который вы хотите.
End Select

Для добавления, модификации или удаления иконки применяются следующий код

' Добавить иконку формы в Traybar
nid.cbSize = Len(nid)
nid.hWnd = Form1.hWnd
nid.uId = vbNull
nid.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
nid.uCallBackMessage = WM_MOUSEMOVE
nid.hIcon = Form1.Icon
nid.szTip = "Test" & vbNullChar

Shell_NotifyIcon NIM_ADD, nid

' Изменить иконку и tooltip
nid.hIcon = Form1.Icon
nid.szTip = "New Icon" & vbNullChar
Shell_NotifyIcon NIM_MODIFY, nid

' Удалить иконку из Traybar , обычно вставляется в процедуру события Terminate (на форме)

Shell_NotifyIcon NIM_DELETE, nid 8)

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 19.07.2004 (Пн) 12:57

В самой последней строчке (И самой главной)
Код: Выделить всё
Shell_NotifyIcon NIM_ADD, nid

выделяет

nid


Типа - Ошибка компилюции нафиг! ByRef несоответствие типов параметра ! Нафиг.....
:wink:
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

baha76
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 168
Зарегистрирован: 07.01.2004 (Ср) 10:59
Откуда: Ташкент

Сообщение baha76 » 19.07.2004 (Пн) 13:27

Есть готовый контрол с примером использования.
Вложения
Taskicon.zip
Пример помещения иконки туда, где часики.
(9.59 Кб) Скачиваний: 52

STanli
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 163
Зарегистрирован: 31.05.2004 (Пн) 15:22
Откуда: ТОМСК

Сообщение STanli » 01.08.2004 (Вс) 0:11

:roll:
Вложения
TrayBar.rar
No Comments
(5.62 Кб) Скачиваний: 45
Раз, два, три, четыре, пять, с детства с рифмой я дружу.

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Re: SysTray

Сообщение GM » 01.08.2004 (Вс) 1:38

Ramzes писал(а):Помогите свернуть программу в 'Tray' к часикам :P
Что снова :)
الفيجوال بيسك الرابح

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Re: SysTray

Сообщение Ramzes » 02.08.2004 (Пн) 0:03

GM писал(а):
Ramzes писал(а):Помогите свернуть программу в 'Tray' к часикам :P
Что снова :)

На дату сообщения посмотри :twisted:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 11

    TopList  
cron