| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > В systray |
| Автор: Loquacious 11.4.2003, 06:53 |
| Народ, как сделать так что бы программка скидывалась в systemtray в иконку и тама работало меню , при нажатии на иконку правой миши..... Help Me ! очень нужно! |
| Автор: Step 11.4.2003, 09:45 |
| шелнотифиикон как то так, для бейсика точно не знаю, но ты поищи |
| Автор: IZ@TOP 11.4.2003, 10:36 | ||
А не по русски можно ? |
| Автор: Step 11.4.2003, 10:43 |
| shell_notifyicon or notifyicon |
| Автор: Loquacious 12.4.2003, 03:09 |
| Step, Не фига, нету такого в BASIC |
| Автор: Loquacious 12.4.2003, 03:10 |
| = ... HELP ME ХОТЬ КТО НИ БУДЬ ... = |
| Автор: Loquacious 13.4.2003, 00:34 |
| = ... Что вы все такие злые! ... = = ... хоть кто ни будь мне ответит?... = |
| Автор: Step 15.4.2003, 15:53 | ||
короче эта функция из модуля, systray попробуй его подключить |
| Автор: Trojan Lord 15.4.2003, 16:48 |
| Option Explicit Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean Private Const NIM_ADD = &H0 Private Const NIM_MODIFY = &H1 Private Const NIM_DELETE = &H2 Private Const WM_MOUSEMOVE = &H200 Private Const NIF_MESSAGE = &H1 Private Const NIF_ICON = &H2 Private Const NIF_TIP = &H4 Private Const WM_LBUTTONDBLCLK = &H203 Private Const WM_LBUTTONDOWN = &H201 Private Const WM_LBUTTONUP = &H202 Private Const WM_RBUTTONDBLCLK = &H206 Private Const WM_RBUTTONDOWN = &H204 Private Const WM_RBUTTONUP = &H205 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 Dim theForm As NOTIFYICONDATA Private Sub Command1_Click() Me.Hide End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 2 ' запись размера структуры theForm.cbSize = Len(theForm) ' Установка хедера иконки theForm.hWnd = picNotifier.hWnd theForm.hIcon = Me.Icon theForm.uId = 1& 'Установка Флажков 'в данном случие показывать иконку, ' отображать TOOLTIP ' передовать события в форму theForm.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE 'Источник событий мышка theForm.ucallbackMessage = WM_MOUSEMOVE 'Строка тултипа theForm.szTip = "ТЕСТ TOOLTIP" & Chr$(0) Shell_NotifyIcon NIM_ADD, theForm Me.Hide App.TaskVisible = False End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) ' We also need to remove it when the program ' is ended. ' Change theForm's cbSize to theForm's length. theForm.cbSize = Len(theForm) ' Change theForm's hWnd to picNotifier's hWnd. theForm.hWnd = picNotifier.hWnd ' Change theForm's uId to 1&. theForm.uId = 1& ' Remove it from the TaskBar. Shell_NotifyIcon NIM_DELETE, theForm End Sub Private Sub mnuPopMenuExit_Click() Unload Me End Sub Private Sub mnuPopMenuShow_Click() Me.Show End Sub Private Sub picNotifier_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 'Обработка событий Static Rec As Boolean, Msg As Long Msg = X / Screen.TwipsPerPixelX If Rec = False Then ' Чтоб не повторять Запуск Rec = True Select Case Msg 'Если DoubleClick Case WM_LBUTTONDBLCLK: Me.Show 'Если левая Кнопка нажата Case WM_LBUTTONDOWN: 'Если левая Кнопка Отжата Case WM_LBUTTONUP: 'Правая кнопка Click Case WM_RBUTTONDBLCLK: 'Если Правая Кнопка нажата Case WM_RBUTTONDOWN: 'Если Правая Кнопка Отжата Case WM_RBUTTONUP: PopupMenu mnuPopMenu End Select Rec = False End If End Sub |
| Автор: Step 15.4.2003, 16:53 |
| ну вот человек конкретно тебе и ответил, хотя можно было до этого дойти самим, а вообще кидайте бейсик - слабый язык, и потдержка у него слабая |
| Автор: Trojan Lord 15.4.2003, 18:08 |
| кидать не стоит..... пригодится когда-нить |
| Автор: Step 15.4.2003, 18:13 |
| Trojan Lord я имел ввиду основательно работать на нем, а так изредка даже удобно в офисе чето збацать, но как основной язые - это не то |
| Автор: Trojan Lord 15.4.2003, 18:36 |
| 2 Step не важно на каком языке ты кодишь, гавное - алгоритм ! |
| Автор: Step 16.4.2003, 09:29 |
| Trojan Lord вопрос в том где логика лучше, и где работать проще |
| Автор: Loquacious 16.4.2003, 16:52 | ||
Step,не брошу... не брошу... реал... хоть и самый просто , но все же когда делать нечего.... помогает.... |
| Автор: Loquacious 16.4.2003, 16:53 |
| Trojan Lord, поддерживаю! |
| Автор: Step 16.4.2003, 19:02 |
| ладно не будем спорить, каждый хвалит свое болото. хатя я во многих болотах перебывал и выбрал для себя лучшее |
| Автор: Trojan Lord 17.4.2003, 16:34 |
| 2 Step - логика в голове ...... или я не прав ? |
| Автор: Step 17.4.2003, 16:38 |
| прав, но еще есть логика языка, так вот в с++ она на самом высоком уровне... паскаль и тот уродский |
| Автор: Loquacious 27.4.2003, 06:59 |
| млин... я офигеваю.. тема ободном создана... а общение пошло по другой теме , тоесть обсирание! • Да к стате во поводу того кода сверху.... не фига не смог разобраться! • Если что не так поправте, но мне кажется что он закрывает окно и потом его опять открывает, но при этом операция которая совершается в этом окне тоже закрывается... выключается.... • мне енто нужно для сервера ЧАТА! он всегда должен работать... |
| Автор: Shekspir 27.6.2003, 10:33 | ||
| Тебе функции Winapi нужны, а точнее та самая, шелнотифиикон :
|
| Автор: Shekspir 27.6.2003, 11:05 | ||||||
| Вот ещё примерчик откопал
в форме нужно указать:
Метод place вызовем так:
|