Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как создать иконку в правом нижнем углу средствами VB / 7 сообщений из 7, страница 1 из 1
23.05.2005, 03:39:46
    #33079182
VipFedor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
[/ Подскажите, пожалуйста, как создать иконку в правом нижнем углу средствами VB? Заранее благодарен!
...
Рейтинг: 0 / 0
23.05.2005, 04:33:16
    #33079186
nibbles
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
VipFedor[/ Подскажите, пожалуйста, как создать иконку в правом нижнем углу средствами VB? Заранее благодарен!

Давнейнько этого вопроса не пробегало. Поиск, уважаемый... Поиск по "Картинка в трее", "Трей".
...
Рейтинг: 0 / 0
26.05.2005, 05:14:05
    #33084330
VipFedor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
Просто "обожаю" людей дающих "умные" советы вместо помощи!!! Видимо из-за скверности характера или отсутсвия знаний (что скорее)! Пример: см. выше!

Так как никто не удасужился мне ответить, а сам я зря времени не терял помещаю код для всех заинтересованых:

Помещение иконки в System Tray
Данный код можно разместить в стандартном модуле.

Option Explicit
Private Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" ( ByVal dwMessage As Long, _
lpData As NOTIFYICONDATA) As Long

Private 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

Private Const NIM_ADD = &H0
Private Const NIM_MODIFY = &H1
Private Const NIM_DELETE = &H2
Private Const NIF_MESSAGE = &H1
Private Const NIF_ICON = &H2
Private Const NIF_TIP = &H4
Private Const NIF_FLAG = NIF_MESSAGE Or NIF_ICON Or NIF_TIP
Public Const WM_RBUTTONDBLCLK = &H206
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_LBUTTONUP = &H202
Public Const WM_MOUSEMOVE = &H200

Public Sub CreateIcon(PictureW As PictureBox, TipText As String)
Dim Icon As NOTIFYICONDATA

Icon.cbSize = Len(Icon)
Icon.hwnd = PictureW.hwnd
Icon.uID = 1&
Icon.uFlags = NIF_FLAG
Icon.uCallbackMessage = WM_MOUSEMOVE
Icon.hIcon = PictureW.Picture
Icon.szTip = TipText & Chr$(0)
Shell_NotifyIcon NIM_ADD, Icon
End Sub

Public Sub DeleteIcon(PictureW As PictureBox)
Dim Icon As NOTIFYICONDATA

Icon.cbSize = Len(Icon)
Icon.hwnd = PictureW.hwnd
Icon.uID = 1&
Shell_NotifyIcon NIM_DELETE, Icon
End Sub

А для выполнения задачи можно поступить так: разместить на форме PictureBox; сделать его не видимым;
загрузить в него необходимую иконку, размерами не больше, чем 32х32. И вызвать функцию
CreateIcon FrmMain.Picture1, "Icon in System Tray".
Так же имеется возможность сделать меню при нажатии мышкой на значок в трее. Для этого нужно создать
обычное меню в одной из ваших форм, сделать его не видимым и в событии MouseMove элемента PictureBox
выполнить следующее:
On Error Resume Next
X = X / Screen.TwipsPerPixelX
Select Case X
Case WM_LBUTTONDOWN ' Происходит во время нажатия левой кнопки мыши
Case WM_RBUTTONDOWN ' Происходит во время нажатия правой кнопки мыши
FrmMain.PopupMenu FrmMain.mnuTray
Case WM_MOUSEMOVE ' Происходит во время наведения мышки на значок в трее
Case WM_LBUTTONDBLCLK ' Происходит во время двойного нажатие левой кнопки мыши
Case WM_RBUTTONUP ' Происходит во время отпускания правой кнопки мыши со значка
End Select

FrmMain.mnuTray - имя Вашего меню, созданного в форме. Перед полным завершением Вашей программы не
забудте выгрузить значок из трея функцией DeleteIcon FrmMain.Picture1
...
Рейтинг: 0 / 0
26.05.2005, 05:17:53
    #33084331
VipFedor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
Вопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь!
...
Рейтинг: 0 / 0
26.05.2005, 05:19:17
    #33084332
VipFedor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
Вопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь!
...
Рейтинг: 0 / 0
26.05.2005, 08:22:25
    #33084375
nibbles
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
VipFedorВопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь!

Поищите еще раз, но уже по ключевым словам "Разрешение экрана". (Нужный Вам топик так и называется)

Что касается этого:
авторПросто "обожаю" людей дающих "умные" советы вместо помощи!!! Видимо из-за скверности характера или отсутсвия знаний (что скорее)! Пример: см. выше!
"Умные" советы - это "попинай шины и протри стекло". Гораздо важнее, на мой взгляд, научить человека находить информацию, а не давать ему разжеванное на блюдечке...
...
Рейтинг: 0 / 0
26.05.2005, 11:02:53
    #33084685
Hibernate
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать иконку в правом нижнем углу средствами VB
молодой, человек, подобный вопрос уже лет семь как является самым злобным оффтопиком во всех vb-шных форумах и конференциях, ответов на него еще в далеком 98-м году дано столько, что наверное 90% трафика инета заняты именно ответами на этот вопрос, более распространенная вариация которого звучит примерно так "а как поместить свою программу туды, к часикам".
но все равно спасибо - потешили, ностальгия однако, по старым добрым временам.... :-)
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как создать иконку в правом нижнем углу средствами VB / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]