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

    [VB.NET] Eventi NotifyIcon sballati

    Salve a tutti,
    Utilizzo un controllo NotifyIcon e faccio comparire un balloon con scritte le mie cose.
    Fin qui tutto bene.
    Io voglio poi che quando l'utente clicchi sul balloon mi faccia qualcosa, allora ho guardato gli eventi di NotifyIcon e ho trovato il bellissimo BallonTipClicked che, l'IntelliSense dice, si verifica quando si fa click sul balloon
    Allora ho messo il mio codice lì, ma non c'era verso di farlo funzionare. Le ho provate tutte ho messo il codice in TUTTI gli eventi della NotifyIcon ma non ce n'è uno che si verifichi

    Com'è possibile??

    Grazie a chi mi risponderà
    Ciao

    P.S: Il balloon lo mostro da un thread separato (ho impostato la proprietà Control.CheckForIllegalCrossThreadCalls = False)
    Mi contraddico facilmente, ma lo faccio così spesso che questo fa di me una persona coerente [Caparezza]
    Se la conoscenza crea problemi, non è con l'ignoranza che li si risolve [Isaac Asimov]
    >>>Visita il mio blog<<<

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Occorre postare il codice per capire come è configurato quel componente e poter fare indagini mirate.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Non è niente di speciale:
    Intanto apro un nuovo thread:
    codice:
    Dim NotifyThread As New Threading.Thread(AddressOf UpdateMethod)
    NotifyThread.Start()
    Poi dopo del codice assolutamente non attinente alla NotifyIcon, la mostro e mostro il balloon
    codice:
    'ApplicationBarIcon è la NotifyIcon
    ApplicationBarIcon.Visible = True 
    'altra cosa: se gli passo 15000 sta poco più di 2s, se gli passo 500 ci sta 5s
    'mah...  :prrr: 
    ApplicationBarIcon.ShowBalloonTip(500)
    E poi nel gestore di BalloonTipClicked:
    codice:
    Private Sub ApplicationBarIcon_BalloonTipClicked(ByVal sender As Object, ByVal e As System.EventArgs) Handles ApplicationBarIcon.BalloonTipClicked
    Process.Start("C:\Programmi\Pippo\Topolino.exe")
    ApplicationBarIcon.Visible = False
    Form1.Close()
    Me.Close()
    End Sub
    EDIT: Ho provato a mostrare il icona e balloon dal thread principale e funziona, come faccio a farla andare anche da un thread separato?
    Mi contraddico facilmente, ma lo faccio così spesso che questo fa di me una persona coerente [Caparezza]
    Se la conoscenza crea problemi, non è con l'ignoranza che li si risolve [Isaac Asimov]
    >>>Visita il mio blog<<<

  4. #4
    Up gente... nessuno mi può aiutare?
    Mi contraddico facilmente, ma lo faccio così spesso che questo fa di me una persona coerente [Caparezza]
    Se la conoscenza crea problemi, non è con l'ignoranza che li si risolve [Isaac Asimov]
    >>>Visita il mio blog<<<

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Ma perché devi necessariamente utilizzare quel componente in un thread separato?

    Sarebbe sufficiente che tu inviassi un messaggio al thread principale dell'applicazione affinché si occupi quest'ultimo di gestire l'icona e i relativi eventi.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    E come faccio?
    Gestivo la cosa in un altro thread perchè sempre in quel thread lì faccio altre operazioni che causano eventualmente il mostrarsi del balloon
    Mi contraddico facilmente, ma lo faccio così spesso che questo fa di me una persona coerente [Caparezza]
    Se la conoscenza crea problemi, non è con l'ignoranza che li si risolve [Isaac Asimov]
    >>>Visita il mio blog<<<

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.