giu 14
programmazione, visual basic 6 giugno 14th, 2009
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | Option Explicit Private Const APP_SYSTRAY_ID = 999 Private Const NOTIFYICON_VERSION = &H3 Private Const NIF_MESSAGE = &H1 Private Const NIF_ICON = &H2 Private Const NIF_TIP = &H4 Private Const NIF_STATE = &H8 Private Const NIF_INFO = &H10 Private Const NIM_ADD = &H0 Private Const NIM_MODIFY = &H1 Private Const NIM_DELETE = &H2 Private Const NIM_SETFOCUS = &H3 Private Const NIM_SETVERSION = &H4 Private Const NIM_VERSION = &H5 Private Const NIS_HIDDEN = &H1 Private Const NIS_SHAREDICON = &H2 'icone Private Const NIIF_NONE = &H0 Private Const NIIF_INFO = &H1 Private Const NIIF_WARNING = &H2 Private Const NIIF_ERROR = &H3 Private Const NIIF_GUID = &H5 Private Const NIIF_ICON_MASK = &HF Private Const NIIF_NOSOUND = &H10 Private Const WM_USER = &H400 Private Const NIN_BALLOONSHOW = (WM_USER + 2) Private Const NIN_BALLOONHIDE = (WM_USER + 3) Private Const NIN_BALLOONTIMEOUT = (WM_USER + 4) Private Const NIN_BALLOONUSERCLICK = (WM_USER + 5) Private Type GUID Data1 As Long Data2 As Integer Data3 As Integer Data4(7) As Byte End Type Private Type NOTIFYICONDATA cbSize As Long hWnd As Long uID As Long uFlags As Long uCallbackMessage As Long hIcon As Long szTip As String * 128 dwState As Long dwStateMask As Long szInfo As String * 256 uTimeoutAndVersion As Long szInfoTitle As String * 64 dwInfoFlags As Long guidItem As GUID End Type Private Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | Private Sub Form_Load() Text1.Text = "Esempio di balloon nella Tray " & _ "Notification Area. Prova " & _ "Ballon Tips" Command1.Caption = "Inserisci Icona nella Systray" Command2.Caption = "Visualizza Balloon Tip" Command2.Enabled = False Option1(1).Value = True End Sub Private Sub Form_Unload(Cancel As Integer) ShellTrayRemove End Sub Private Sub Command1_Click() Call ShellTrayAdd Command2.Enabled = True End Sub Private Sub Command2_Click() ShellTrayModifyTip GetSelectedOptionIndex() End Sub Private Sub ShellTrayAdd() Dim nid As NOTIFYICONDATA With nid .cbSize = Len(nid) .hWnd = Form1.hWnd .uID = APP_SYSTRAY_ID .uFlags = NIF_MESSAGE Or NIF_ICON Or NIF_TIP .dwState = NIS_SHAREDICON .hIcon = Form1.Icon .szTip = "Visualizza il Balloon Tip!" & Chr(0) .uTimeoutAndVersion = NOTIFYICON_VERSION End With Call Shell_NotifyIcon(NIM_ADD, nid) Call Shell_NotifyIcon(NIM_SETVERSION, nid) End Sub Private Sub ShellTrayRemove() Dim nid As NOTIFYICONDATA With nid .cbSize = Len(nid) .hWnd = Form1.hWnd .uID = APP_SYSTRAY_ID End With Call Shell_NotifyIcon(NIM_DELETE, nid) End Sub Private Sub ShellTrayModifyTip(nIconIndex As Long) Dim nid As NOTIFYICONDATA With nid .cbSize = Len(nid) .hWnd = Form1.hWnd .uID = APP_SYSTRAY_ID .uFlags = NIF_INFO .dwInfoFlags = nIconIndex .szInfoTitle = "Visualizza il Balloon Tip!" & Chr(0) .szInfo = Text1.Text End With Call Shell_NotifyIcon(NIM_MODIFY, nid) End Sub Private Function GetSelectedOptionIndex() As Long GetSelectedOptionIndex = Option1(0).Value * 0 Or _ Option1(1).Value * -1 Or _ Option1(2).Value * -2 Or _ Option1(3).Value * -3 End Function |
Tags: ballon, programmazione, tips, tray icon, vb6
Prissimo articolo [VB6] Funzione BEEP
Articolo precedente [VB6] Controllare connessione internet








ottobre 15th, 2009 at 13:50
Great code! Thank you very much.