Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Problema con icona traybar

    Tra i tanti script trovati sul web non sono riuscito a trovarne uno che mi togliesse l'icona della traybar all'uscita del programma. Se per esempio faccio End per terminare il programma, mi ritrovo che l'icona della tray sta ancora visualizzata, e per toglierla basta che ci passo con il mouse sopra. Non esiste un comando che la faccia sparire alla chiusura dell'applicazione?
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  2. #2
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    certo che è possibile eliminare l'icona.

    innanzi tutto non devi mai terminare il programa con End, ma scaricando tutti i Forms in memoria facendone l'unload.

    per eliminare l'icona usa questa routine, che devi ovviamente adattare al tuo programma:

    codice:
    Sub DeleteIcon()
        Dim Tic As NOTIFYICONDATA
        Tic.cbSize = Len(Tic)
        Tic.hwnd = picIconTray.hwnd    'picIconTray è la picturebox in cui risiede l'icona che va sulla Tray
        Tic.uID = 1&
        erg = Shell_NotifyIcon(NIM_DELETE, Tic)
    End Sub
    Boolean

  3. #3
    grazie mille, funziona alla grande, però non ho ancora capito come fare per terminare un programma... supponiamo avessi aperto un 3-4 forms? devo fare unload Form1...unload Form2... ecc? E se uno di questi 4 non fosse aperto quando gli mando il comando di unload?
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  4. #4
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    generalmente io uso una routine (posizionata in un modulo) che lancio al momento della chiusura, che si occupa di rilevare i forms aperti scaricandoli, scaricando per ultimo, il form dal quale la routine viene lanciata:

    codice:
    Public Sub CloseAll(ownerForm as Form)
    Dim frm As Form
    For Each frm in Forms
        If frm.Name <> ownerForm.Name Then
            Unload frm
        End If
        Unload ownerForm
    Next frm
    e va usata al momento della chiusura, così:

    codice:
    CloseAll Me
    Boolean

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.