实现效果:
通过StatusStrip显示窗体状态栏
同时将状态栏分成三部分
居左边显示相关文字信息
中间空白显示
居右边显示时间信息
1.创建窗体及添加StatusStrip
默认StatusStrip名称为statusStrip1
2.在statusStrip1的Items属性中
添加三个StatusLabel
默认名称为toolStripStatusLabel1,2,3
按1,2,3的顺序排列
3.修改toolStripStatusLabel1的Text属性
为相关文字如"欢迎使用本系统"
4.修改toolStripStatusLabel2的Text属性为空
Sprint属性为True
BorderSides属性为Left,Right
5.修改toolStripStatusLabel3的Text属性为空
在Form的Load事件中 修改其显示为当前时间
this.toolStripStatusLabel3.Text = "登录时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
6.如果要使状态栏时间信息随操作系统当前时间不停的改变
则可以通过增加Timer控件来实现
增加Timer控件 timer1
编写其Tick事件为
private void timer1_Tick(object sender, EventArgs e)
{
this.toolStripStatusLabel3.Text = "系统当前时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
}
在Form的Load事件中 对timer1进行相关设置
private void MainForm_Load(object sender, EventArgs e)
{
this.toolStripStatusLabel3.Text = "系统当前时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
this.timer1.Interval=1000;
this.timer1.Start();
}
2,C# winform设置状态栏(statusStrip)中的项显示在右下角以及添加分隔符
方法一:
在状态栏所有项目(StatusLabel、ProgressBar、DropDownButton等)前添加一个空白的StatusLabel (Text属性为空),并将其Spring属性设为True。
Spring属性的作用是设置该项是否填满剩余空间,设为True以后,当程序运行时后面的项就都挤到右边,实现靠右对齐了。
如果更进一步,需要一部分项靠左,一部分靠右,那就在两部分中间插入空白StatusLabel,同时设其Spring属性为True。
这种方法比较简单,不用手工添加代码。首选!
方法二:
这个方法是我无意中发现的。
设置StatusStrip控件的LayoutStyle属性为HorizontalStackWithOverflow 或 StackWithOverflow。
然后在代码中修改状态栏上某项的Alignment为Right,这次就有靠右的效果了。
例如: this.toolStripStatusLabel1.Alignment = ToolStripItemAlignment.Right;
注意如果是多个项,那靠左对齐的从左往右排列,靠右对齐的从右往左排列。
添加分隔符:
statusStrip.Items.Insert(2, new ToolStripSeparator());
3,添加分割符
this.StatusStrip1.Items.Insert(3, new ToolStripSeparator()); 可以实现
winform没有,可以加个StatusLabe来模拟这种效,简单点的,Text清空,BorderSides只设左或右,再设置适当的Margin就差不多了,或者是用个Image来达到这个效果
4,C#里StatusStrip和StatusBar有什么不同?
StatusStrip 替换并扩展了早期版本的 StatusBar 控件,StatusStrip 实现了StatusBar 的向后兼容.StatusBar 控件(Windows 窗体)是作为一个区域用在窗体上的,通常显示在窗口的底部,应用程序可以在那里显示各种状态信息。StatusBar 控件可以有状态栏面板,面板上显示指示状态的文本或图标,或者显示指示一个进程正在工作的一系列动画图标;例如,Microsoft Word 指示正在保存文档StatusStrip 控件由 ToolStripStatusLabel 对象组成,每个这样的对象都可以显示文本、图标或同时显示这二者。StatusStrip 还可以包含 ToolStripDropDownButton、ToolStripSplitButton 和 ToolStripProgressBar 控件。 默认 StatusStrip 没有面板。若要向 StatusStrip 中添加面板,请使用 System.Windows.Forms.ToolStripItemCollection.AddRange(System.Windows.Forms.ToolStripItem[]) 方法。