방법: Windows Forms StatusBar 컨트롤에서 클릭한 패널 확인

중요

StatusStripToolStripStatusLabel 컨트롤은 StatusBarStatusBarPanel 컨트롤을 대체하고 새로운 기능을 추가한 것이지만 이전 버전과의 호환성 및 앞으로의 사용 가능성을 고려하여 StatusBarStatusBarPanel 컨트롤을 유지하도록 선택할 수 있습니다.

사용자 클릭에 응답하도록 StatusBar 컨트롤 컨트롤을 프로그래밍하려면 PanelClick 이벤트 내에서 사례 문을 사용합니다. 이벤트에는 클릭된 StatusBarPanel에 대한 참조가 포함된 인수(패널 인수)가 포함됩니다. 이 참조를 사용하여 클릭한 패널의 인덱스와 그에 따라 프로그램을 확인할 수 있습니다.

참고

StatusBar 컨트롤의 ShowPanels 속성이 true로 설정되어 있는지 확인합니다.

클릭한 패널을 확인하려면

  1. PanelClick 이벤트 처리기에서 Select Case(Visual Basic) 또는 switch case(Visual C# 또는 Visual C++) 문을 사용하여 이벤트 인수에서 클릭한 패널의 인덱스 검사를 통해 클릭한 패널을 확인합니다.

    다음 코드 예제에서는 폼, StatusBar 컨트롤, StatusBar1 및 두 StatusBarPanel 개체, StatusBarPanel1StatusBarPanel2 필요합니다.

    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++) 양식 생성자에 다음 코드를 추가하여 이벤트 처리기를 등록합니다.

    this.statusBar1.PanelClick += new
       System.Windows.Forms.StatusBarPanelClickEventHandler
       (this.statusBar1_PanelClick);  
    
    this->statusBar1->PanelClick += gcnew  
       System::Windows::Forms::StatusBarPanelClickEventHandler  
       (this, &Form1::statusBar1_PanelClick);  
    

참고 항목