工具栏与状态栏
一、 工具栏(ToolBar类)。
工具栏控件通常用于提供访问命令的快捷方式。
1、 ToolBar类属性
类型 |
属性 |
访问方式 |
说明 |
String |
ToolTipText |
读/写 |
获取或设置显示的提示文本。 |
Control |
Parent |
读/写 |
获取或设置父容器。 |
ImageList |
ImageList |
读/写 |
获取或设置图像列表。 |
ToolBar |
Buttons |
读/写 |
获取或设置子项的集合。 |
Int |
ImageIndex |
读/写 |
获取或设置工具栏控件中的图像索引。 |
二、 工具栏子项(ToolBarButton类)。
每个工具栏都是由N个工具栏子项组成的,ToolBarButton就是工具栏子项。
1、 ToolBarButton类属性
类型 |
属性 |
访问方式 |
说明 |
String |
ToolTipText |
读/写 |
获取或设置显示的提示文本。 |
Int |
ImageIndex |
读/写 |
获取或设置工具栏控件中的图像索引。 |
例:
using System;
using System.Drawing;
using System.Windows.Forms;
namespace 工具栏与状态栏
{
public partial class Form1 : Form
{
private ToolBar tobr;
private Bitmap bmp;
private ImageList list;
private ToolBarButton toolBtn;
public Form1()
{
InitializeComponent();
///菜单
Menu = new MainMenu();
Menu.MenuItems.Add("File");
Menu.MenuItems.Add("Edit");
Menu.MenuItems.Add("View");
Menu.MenuItems.Add("Help");
///Bitmap
try
{
bmp = new Bitmap(GetType(), "TButton.bmp");
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
///图像列表
list = new ImageList();
list.Images.AddStrip(bmp);
///工具栏名称
string[] str = { "New", "Open", "Save", "Print", "Cut", "Copy", "Paste" };
///工具栏
tobr = new ToolBar();
tobr.Parent = this;
tobr.ImageList = this.list;
for (int i = 0; i < 7; i++)
{
toolBtn = new ToolBarButton();
toolBtn.ImageIndex = i;
toolBtn.ToolTipText = str[i];
tobr.Buttons.Add(toolBtn);
}
}
}
}
三、 .NET2.0中的工具栏(ToolStrip类)。
ToolStrip控件用于产生一个Windows工具栏,可以将一些常用的控件作为子项放在其中,通过各个子项和应用程序发生联系,常用子项有Button、Label、SplitButton、ComboBox和TextBox等。
2、 ToolStrip类属性
类型 |
属性 |
访问方式 |
说明 |
Image |
BackgroundImage |
写 |
设置背景图片。 |
ImageLayout |
BackgroundImageLayout |
读/写 |
获取或设置背景图片的对其方式。 |
ToolStripItemCollection |
Items |
读/写 |
获取或设置控件上子项的集合。 |
Int |
TabIndex |
读/写 |
获取或设置子项的索引。 |
Bool |
ShowItemToolTips |
读/写 |
获取或设置是否显示提示文本。 |
String |
Text |
读/写 |
获取或设置文本。 |
在.NET2.0中从新封装的这个工具栏类比.NET1.1中的工具栏要多了很多的功能,比如说新的工具栏类可以加入相应的控件来作为子项,而.NET1.1中的工具栏类就没有这样的功能。
四、 状态栏(StatusBar类)。
状态栏控件用来提供一个状态栏,通常出现在窗体的底部,用于显示不同种类的状态数据。
1、 StatusBar类属性
类型 |
属性 |
访问方式 |
说明 |
Control |
Parent |
读/写 |
获取或设置控件的父容器。 |
String |
Text |
读/写 |
获取或设置控件的文本。 |
Bool |
ShowPanels |
读/写 |
获取或设置控件面板是否已加入到控件中了。 |
StatusBar |
Panels |
读/写 |
获取或设置控件窗格的集合。 |
例:
using System;
using System.Drawing;
using System.Windows.Forms;
namespace 工具栏与状态栏
{
public partial class Form1 : Form
{
private ToolBar tobr;
private Bitmap bmp;
private ImageList list;
private ToolBarButton toolBtn;
private StatusBar sbar;
public Form1()
{
InitializeComponent();
///菜单
Menu = new MainMenu();
Menu.MenuItems.Add("File");
Menu.MenuItems.Add("Edit");
Menu.MenuItems.Add("View");
Menu.MenuItems.Add("Help");
///Bitmap
try
{
bmp = new Bitmap(GetType(), "TButton.bmp");
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
///图像列表
list = new ImageList();
list.Images.AddStrip(bmp);
///工具栏名称
string[] str = { "New", "Open", "Save", "Print", "Cut", "Copy", "Paste" };
///工具栏
tobr = new ToolBar();
tobr.Parent = this;
tobr.ImageList = this.list;
for (int i = 0; i < 7; i++)
{
toolBtn = new ToolBarButton();
toolBtn.ImageIndex = i;
toolBtn.ToolTipText = str[i];
tobr.Buttons.Add(toolBtn);
}
///状态栏
sbar = new StatusBar();
sbar.ShowPanels = true;
sbar.Parent = this;
sbar.Panels.Add("ss");
sbar.Panels.Add("dd");
}
}
}
五、 状态栏窗格类(StatusBarPanel类)。
状态栏窗格类可以让状态栏出现多个错误提示,如果我们不加入状态栏窗格的话,状态栏就只能出现一个错误提示。
1、 StatusBarPanel类属性
类型 |
属性 |
访问方式 |
说明 |
StatusBarPanelBorderStyle |
BorderStyle |
读/写 |
获取或设置状态栏窗格显示样式。 |
Icon |
Icon |
读/写 |
获取或设置显示图标。 |
String |
ToolTipText |
读/写 |
获取或设置提示文本。 |
HorizontalAlignment |
Alignment |
读/写 |
获取或设置窗格文本的对齐方式。 |
StatusBarPanelAutoSize |
AutoSize |
读/写 |
获取或设置是否自动调整窗格大小。 |
例:
using System;
using System.Drawing;
using System.Windows.Forms;
namespace 工具栏与状态栏
{
public partial class Form1 : Form
{
private ToolBar tobr;
private Bitmap bmp;
private ImageList list;
private ToolBarButton toolBtn;
private StatusBar sbar;
private StatusBarPanel sbpanel1;
private StatusBarPanel sbpanel2;
public Form1()
{
InitializeComponent();
///菜单
Menu = new MainMenu();
Menu.MenuItems.Add("File");
Menu.MenuItems.Add("Edit");
Menu.MenuItems.Add("View");
Menu.MenuItems.Add("Help");
///Bitmap
try
{
bmp = new Bitmap(GetType(), "TButton.bmp");
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
///图像列表
list = new ImageList();
list.Images.AddStrip(bmp);
///工具栏名称
string[] str = { "New", "Open", "Save", "Print", "Cut", "Copy", "Paste" };
///工具栏
tobr = new ToolBar();
tobr.Parent = this;
tobr.ImageList = this.list;
for (int i = 0; i < 7; i++)
{
toolBtn = new ToolBarButton();
toolBtn.ImageIndex = i;
toolBtn.ToolTipText = str[i];
tobr.Buttons.Add(toolBtn);
}
///状态栏
sbar = new StatusBar();
sbar.ShowPanels = true;
sbar.Parent = this;
///状态栏窗格
sbpanel1 = new StatusBarPanel();
sbpanel1.Text = "Panel1";
sbpanel2 = new StatusBarPanel();
sbpanel2.Text = "Panel2";
sbar.Panels.Add(sbpanel1);
sbar.Panels.Add(sbpanel2);
}
}
}
六、 .NET2.0中的状态栏(StatusStrip类)。
.NET2.0中的状态栏可以将一些常用的控件作为子项放在其中,通过各个子项和应用程序发生关系。