Domanda

Come posso creare un fumetto pop-up come vedresti da Windows Messenger o AVG o Norton o chiunque altro?

Voglio che mostri le informazioni e poi scivoli via dopo alcuni secondi.

Modifica: deve essere bloccato come Form.ShowDialog () perché il programma si chiude dopo aver visualizzato la notifica

È stato utile?

Soluzione

È possibile utilizzare il controllo notifyIcon che fa parte di .NET 2.0 System.Windows.Forms. Ciò consente di posizionare un'icona per l'applicazione nella barra delle applicazioni. Quindi, puoi chiamare il metodo ShowBalloonTip (int timeOut) su quello. Assicurati comunque di impostare prima il testo e le proprietà dell'icona su notifyIcon affinché funzioni. Esempio di codice piccolo:

private void button1_Click(object sender, EventArgs e)
        {
            this.notifyIcon1.BalloonTipText = "Whatever";
            this.notifyIcon1.BalloonTipTitle = "Title";
            this.notifyIcon1.Icon = new Icon("icon.ico");
            this.notifyIcon1.Visible = true;
            this.notifyIcon1.ShowBalloonTip(3);
        }

EDIT: Ok, quindi notifyIcon non funzionerà per te. Il mio secondo suggerimento sarebbe quindi quello di creare il proprio controllo per questo. In realtà, vorrei usare un modulo. Un modulo semplice, senza bordi e senza scatola di controllo e solo un timer in esecuzione in modo da poter impostare l'opacità per la dissolvenza in / out. Quindi, puoi facilmente ottenere l'angolo in basso a destra dello schermo usando Rectangle Screen.PrimaryScreen.WorkingArea. Quindi mostra il tuo modulo in quella posizione.

Altri suggerimenti

Non creare un fumetto modale (bloccante). Per favore. Una grande parte del design di queste interfacce utente è che sono non dialoghi: sono elementi transitori, potenzialmente non interattivi , destinati a fornire informazioni accidentali a un utente < em> senza necessariamente interrompere il loro flusso di lavoro. Un fumetto che ruba la messa a fuoco e blocca l'input dell'utente sarebbe al massimo irritante - se hai bisogno di una finestra di dialogo, allora usa una finestra di dialogo.

Potresti voler leggere questo articolo http://www.codeproject.com /KB/miscctrl/RobMisNotifyWindow.aspx che ha un codice per visualizzare una finestra di notifica simile a MSN Messenger

.NET 1.1 Visual Basic Power Pack aveva un tostapane controllo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top