StatusBar.Panels : StatusBar « System.Windows.Forms « C# / C Sharp by API






StatusBar.Panels

 

  using System;
  using System.Drawing;
  using System.Collections;
  using System.ComponentModel;
  using System.Windows.Forms;
  using System.Data;

  public class MainForm : System.Windows.Forms.Form
  {
    private StatusBar statusBar = new StatusBar();
    private StatusBarPanel sbPnlPrompt = new StatusBarPanel();
    private StatusBarPanel sbPnlTime = new StatusBarPanel();

    private Timer timer1 = new Timer();
    private MainMenu mainMenu;
    private System.ComponentModel.Container components;

    public MainForm()
    {
      InitializeComponent();

      Text = "Status Bar Example";
      CenterToScreen();
      BackColor = Color.CadetBlue;

      // Configure the timer.
      timer1.Interval = 1000;
      timer1.Enabled = true;
      timer1.Tick += new EventHandler(timer1_Tick);
      this.MenuComplete += new EventHandler(StatusForm_MenuDone);
      BuildMenuSystem();
      BuildStatBar();
    }

    private void InitializeComponent()
    {
      this.components = new System.ComponentModel.Container();
      this.Size = new System.Drawing.Size(300,300);
      this.Text = "Form1";
    }
    static void Main() 
    {
      Application.Run(new MainForm());
    }

    // Clicked handlers.
    private void FileExit_Clicked(object sender, EventArgs e) 
    {    
      this.Close();
    }
        
    // Help | About Menu item handler
    private void HelpAbout_Clicked(object sender, EventArgs e) 
    {
      MessageBox.Show("The amazing menu app...");
    }
        
    // Selected handlers.
    private void FileExit_Selected(object sender, EventArgs e) 
    {
      sbPnlPrompt.Text = "Terminates this app";     
    }

    private void HelpAbout_Selected(object sender, EventArgs e) 
    {
      sbPnlPrompt.Text = "Displays app info";
    }

    // Other handlers...
    private void StatusForm_MenuDone(object sender, EventArgs e) 
    {
      sbPnlPrompt.Text = "Ready";
    }

    private void timer1_Tick(object sender, EventArgs e) 
    {
      DateTime t = DateTime.Now;
      string s = t.ToLongTimeString() ;
      sbPnlTime.Text = s ;    
    }

    private void BuildMenuSystem()
    {
      mainMenu = new MainMenu();
      
      MenuItem miFile = mainMenu.MenuItems.Add("&File");          
      miFile.MenuItems.Add(new MenuItem("E&xit",new EventHandler(this.FileExit_Clicked), Shortcut.CtrlX));
      miFile.MenuItems[0].Select += new EventHandler(FileExit_Selected);

      MenuItem miHelp = mainMenu.MenuItems.Add("Help");  
      miHelp.MenuItems.Add(new MenuItem("&About",  new EventHandler(this.HelpAbout_Clicked), Shortcut.CtrlA));
      miHelp.MenuItems[0].Select += new EventHandler(HelpAbout_Selected);

      this.Menu = mainMenu;      
    }

    private void BuildStatBar()
    {
      // Configure the status bar.
      statusBar.ShowPanels = true;
      statusBar.Panels.AddRange(new StatusBarPanel[] {sbPnlPrompt, sbPnlTime});
      
      // Configure prompt panel.
      sbPnlPrompt.BorderStyle = StatusBarPanelBorderStyle.None;
      sbPnlPrompt.AutoSize = StatusBarPanelAutoSize.Spring;
      sbPnlPrompt.Width = 62;
      sbPnlPrompt.Text = "Ready";
      
      // Configure time pane.
      sbPnlTime.Alignment = HorizontalAlignment.Right;
      sbPnlTime.Width = 76;

      try
      {
        Icon i = new Icon("status.ico");
        sbPnlPrompt.Icon = i;
      }
      catch(Exception e)
      {
        Console.WriteLine(e.Message);
      }

      this.Controls.Add(statusBar);  
    }
  }


      

   
  








Related examples in the same category

1.new StatusBar()
2.StatusBar.Items.AddRange
3.StatusBar.Panels.Add
4.StatusBar.ShowPanels