Procedura: individuare il pannello selezionato nel controllo StatusBar Windows Form
Importante
I StatusStrip controlli e ToolStripStatusLabel sostituiscono e aggiungono funzionalità ai StatusBar controlli e StatusBarPanel , tuttavia, i StatusBar controlli e StatusBarPanel vengono mantenuti sia per la compatibilità con le versioni precedenti che per l'uso futuro, se si sceglie.
Per programmare il controllo StatusBar per rispondere ai clic dell'utente, usare un'istruzione case all'interno dell'evento PanelClick . L'evento contiene un argomento (argomento pannello), che contiene un riferimento all'oggetto selezionato StatusBarPanel. Usando questo riferimento, è possibile determinare l'indice del pannello selezionato e programmare di conseguenza.
Nota
Verificare che la StatusBar proprietà del ShowPanels controllo sia impostata su true
.
Per determinare quale pannello è stato selezionato
PanelClick Nel gestore eventi usare un'istruzione
Select Case
(in Visual Basic) oswitch case
(Visual C# o Visual C++) per determinare quale pannello è stato selezionato esaminando l'indice del pannello selezionato negli argomenti dell'evento.L'esempio di codice seguente richiede la presenza, nel formato, di un StatusBar controllo,
StatusBar1
e di due StatusBarPanel oggettiStatusBarPanel1
eStatusBarPanel2
.Private Sub StatusBar1_PanelClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.StatusBarPanelClickEventArgs) Handles StatusBar1.PanelClick Select Case StatusBar1.Panels.IndexOf(e.StatusBarPanel) Case 0 MessageBox.Show("You have clicked Panel One.") Case 1 MessageBox.Show("You have clicked Panel Two.") End Select End Sub
private void statusBar1_PanelClick(object sender, System.Windows.Forms.StatusBarPanelClickEventArgs e) { switch (statusBar1.Panels.IndexOf(e.StatusBarPanel)) { case 0 : MessageBox.Show("You have clicked Panel One."); break; case 1 : MessageBox.Show("You have clicked Panel Two."); break; } }
private: void statusBar1_PanelClick(System::Object ^ sender, System::Windows::Forms::StatusBarPanelClickEventArgs ^ e) { switch (statusBar1->Panels->IndexOf(e->StatusBarPanel)) { case 0 : MessageBox::Show("You have clicked Panel One."); break; case 1 : MessageBox::Show("You have clicked Panel Two."); break; } }
(Visual C#, Visual C++) Inserire il codice seguente nel costruttore del modulo per registrare il gestore eventi.
this.statusBar1.PanelClick += new System.Windows.Forms.StatusBarPanelClickEventHandler (this.statusBar1_PanelClick);
this->statusBar1->PanelClick += gcnew System::Windows::Forms::StatusBarPanelClickEventHandler (this, &Form1::statusBar1_PanelClick);
Vedi anche
.NET Desktop feedback
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per