|
|
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
[/ Подскажите, пожалуйста, как создать иконку в правом нижнем углу средствами VB? Заранее благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2005, 03:39:46 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
VipFedor[/ Подскажите, пожалуйста, как создать иконку в правом нижнем углу средствами VB? Заранее благодарен! Давнейнько этого вопроса не пробегало. Поиск, уважаемый... Поиск по "Картинка в трее", "Трей". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2005, 04:33:16 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
Просто "обожаю" людей дающих "умные" советы вместо помощи!!! Видимо из-за скверности характера или отсутсвия знаний (что скорее)! Пример: см. выше! Так как никто не удасужился мне ответить, а сам я зря времени не терял помещаю код для всех заинтересованых: Помещение иконки в 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2005, 05:14:05 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
Вопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2005, 05:17:53 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
Вопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2005, 05:19:17 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
VipFedorВопрос о изменении разрешения экрана из програмного кода остается не разкрытым! Кто знает, прошу помочь! Поищите еще раз, но уже по ключевым словам "Разрешение экрана". (Нужный Вам топик так и называется) Что касается этого: авторПросто "обожаю" людей дающих "умные" советы вместо помощи!!! Видимо из-за скверности характера или отсутсвия знаний (что скорее)! Пример: см. выше! "Умные" советы - это "попинай шины и протри стекло". Гораздо важнее, на мой взгляд, научить человека находить информацию, а не давать ему разжеванное на блюдечке... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2005, 08:22:25 |
|
||
|
Как создать иконку в правом нижнем углу средствами VB
|
|||
|---|---|---|---|
|
#18+
молодой, человек, подобный вопрос уже лет семь как является самым злобным оффтопиком во всех vb-шных форумах и конференциях, ответов на него еще в далеком 98-м году дано столько, что наверное 90% трафика инета заняты именно ответами на этот вопрос, более распространенная вариация которого звучит примерно так "а как поместить свою программу туды, к часикам". но все равно спасибо - потешили, ностальгия однако, по старым добрым временам.... :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2005, 11:02:53 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=33079186&tid=2167746]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 185ms |
| total: | 288ms |

| 0 / 0 |
