Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    [VB6] Script per ridurre l' icone nella barra degli strumenti

    Vorrei uno script che mi permetta, nel momento in cui clicco su riduci a icona, di ridurre a icona il programma nella barra degli strumenti in basso a destra, quella in cui c' è anche l orologio...

    Potete aiutarmi?

  2. #2
    Ciao..più che uno script devi usare le funzioni API:

    Inserisci questo in un modulo:

    codice:
    Public 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
    
          Public Const NIM_ADD = &H0
          Public Const NIM_MODIFY = &H1
          Public Const NIM_DELETE = &H2
          Public Const NIF_MESSAGE = &H1
          Public Const NIF_ICON = &H2
          Public Const NIF_TIP = &H4
          Public Const WM_MOUSEMOVE = &H200
          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 Declare Function SetForegroundWindow Lib "user32" _
          (ByVal hwnd As Long) As Long
          Public Declare Function Shell_NotifyIcon Lib "shell32" _
          Alias "Shell_NotifyIconA" _
          (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean
    
          Public nid As NOTIFYICONDATA
    Inserisci questo codice nella form dove avviene la riduzione:

    codice:
    Private Sub Form_Load()
    
    Shell_NotifyIcon
           Me.Show
           Me.Refresh
           With nid
            .cbSize = Len(nid)
            .hwnd = Me.hwnd
            .uId = vbNull
            .uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
            .uCallBackMessage = WM_MOUSEMOVE
            .hIcon = Me.Icon
            .szTip = "Your ToolTip" & vbNullChar
           End With
           Shell_NotifyIcon NIM_ADD, nid
          End Sub
    
          Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
          Dim Result As Long
          Dim msg As Long
           If Me.ScaleMode = vbPixels Then
            msg = X
           Else
            msg = X / Screen.TwipsPerPixelX
           End If
           Select Case msg
            Case WM_LBUTTONUP        
             Me.WindowState = vbNormal
             Result = SetForegroundWindow(Me.hwnd)
             Me.Show
            Case WM_LBUTTONDBLCLK    
             Me.WindowState = vbNormal
             Result = SetForegroundWindow(Me.hwnd)
             Me.Show
            Case WM_RBUTTONUP        
             Result = SetForegroundWindow(Me.hwnd)
             Me.PopupMenu Me.mPopupSys
           End Select
          End Sub
    
          Private Sub Form_Resize()
           If Me.WindowState = vbMinimized Then Me.Hide
          End Sub
    
          Private Sub Form_Unload(Cancel As Integer)
             Shell_NotifyIcon NIM_DELETE, nid
          End Sub
    
          Private Sub mPopExit_Click()
           Unload Me
          End Sub
    
          Private Sub mPopRestore_Click()
           Dim Result As Long
           Me.WindowState = vbNormal
           Result = SetForegroundWindow(Me.hwnd)
           Me.Show
          End Sub
    Chiaramente apparirà l'icona del tuo form per la proprietà nell'evento load del form hicon = me.icon..

    Fammi sapere..ciao

  3. #3
    Mi da un errore nel codice in form_load
    L' errore me lo da all inizio, all' istrauzione Shell_NotifyIcon

    cm risolvo?mi dice argomento non facoltativo...

  4. #4
    Ok ho risolto, grazie mille

  5. #5
    Oh si, l'errore veniva dato alla prima riga del codice del form, in quanto mancavano gli argomenti..

    Cmq figurati..


    Ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    99
    Potresti spiegare come hai risolto per favore?

  7. #7
    Rispondo io:

    Nell'evento Load del form, prima di With c'è una funzione API senza argomenti, e sarebbe "Shell_NotifyIcon": questa riga mi era scappata e deve essere cancellata anche perchè l'API viene richiamata immediatamente dopo il With.

    Ciao

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    139
    a me non funziona

    quando provo a far partire l'applicazione mi dice


    Errore di compilazione:
    Rilevato nome non univoco: NIF_ICON




    Che devo fare????
    Vi prego aiutatemi

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    139
    Nessuno sa dirmi come devo fare per risolvere questo errore?

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    L'errore mi sembra chiarissimo

    Originariamente inviato da Fenix'89
    Rilevato nome non univoco: NIF_ICON
    ... controlla la costante NIF_ICON nel tuo programma ... l'hai dichiarato piu' di una volta ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.