除了MenuStrip控件之外,还有许多控件可用于填充菜单。3个常见的控件是ToolStripMenuItem,ToolStripDropDown,和ToolStripSeparator。这些控件表示查看菜单或工具栏中某一项的特定方式。

ToolStripMenuItem - 表示菜单中的一项

ToolStripDropDown - 表示单击一项,就会显示包含其他项目的一个列表

ToolStripSeparator - 表示菜单或工具栏中的水平或垂直分割线

ContextMenuStrip - 当用户右击一项时,关联菜单就会显示出来,它通常显示与该项相关的信息。

ToolStripMenuItem的属性

属性 说明
Text &显示为下划线
ShortcutKeys 快捷方式
Checked 表示菜单是否被选中
CheckOnClick true - 如果菜单项文本左边的复选框没有打上标记,就搭上标记,如果复选框已经打上了标记,就去除该标记,否则该标记就被一个图像替代,使用Checked属性确定菜单项的状态
Enabled false,菜单项就会灰显,不能被选中
DropDownItems 返回一个集合,用作与菜单项相关的下拉菜单

ToolStripMenuItem的事件

事件 说明
Click 用户单击菜单项时,引发该事件
CheckedChanged 当单击CheckOnClick属性的菜单项时,引发这个事件

工具栏

ToolStrip最左边有四个垂直排列的点

ToolStrip控件的属性

属性 说明
GripStyle 控制4个垂直排列的点是否显示在工具栏的最左边.隐藏手柄后,用户就不能移动工具栏了
LayoutStyle 控制工具栏上的项如何显示,默认为水平显示
Items 包含工具栏上所有项的集合
ShowItemToolTip 确定是否显示工具栏上某项的工具 提示
Stretch 默认情况下,工具栏比包含在其中的项略宽或略高.如果把Stretch属性设置为true,工具栏就会占据其容器的总长

ToolStrip的项

控件 说明
ToolStripButton 表示一个按钮。用于带文本和不带文本按钮
ToolStripLable 表示一个标签。这个控件还可以显示图像,也就是说这个控件可以用于显示一个静态图像,放在不显示其本身信息的另一个控件上面。
ToolStripSplitButton 显示一个右端带有下拉按钮的按钮,单击该下拉按钮,就会在它的下面显示一个菜单。如果单击控件的按钮部分,该菜单不会打开
ToolStripDropDownButton 类似于ToolStripSplitButon,唯一的区别是去除了下拉按钮,代之以下拉数组图像。单击控件的任一部分,都会打开其菜单部分。
ToolStripComboBox 显示一个组合框
ToolStripProgressBar 在工具栏上潜入一个进度条
ToolStripTextBox 显示一个文本框
ToolStripSeparator 为各个项创建水平或垂直分隔符

StatusStrip控件

此控件在许多应用程序中表示对话框底部的一栏,它通常用于显示应用程序当前状态的简短信息。派生于ToolStrip,在StatusStrip中可以只用前面介绍的4个控件中的3个:

ToolStripDropDownButton,ToolStripProgressBar和ToolStripSplitButton。还有一个控件是StatusStrip专用的即StatusStripStatusLabel,它也是个默认项。

StatusStripStatusLabel的属性 - 使用文本和图像向用户显示应用程序当前的状态信息。

属性 值
AutoSize AutoSize在默认状态下是打开的,这不是非常直观,因为在改变状态栏上标签的文本时,不希望该标签来回移动,除非标签上的信息是静态的,否则总是应该找个属性改为false
DoubleClickEnable 可以指定是否引发DoubleClick事件,用户可以在应用程序的另一个地方修改信息。比如,用户双击包含bold的面板,在文本中启用或禁用粗体格式

C# Windows - 菜单栏和工具栏的更多相关文章

  1. WPF: 针对Windows 8优化菜单栏和工具栏

    原文 WPF: 针对Windows 8优化菜单栏和工具栏 目录 1. 关于菜单图标大小 2. 关于IsEnabled和工具栏图标 3. 针对.NET 3.x的菜单栏和工具栏外观 返回目录 1. 关于菜 ...

  2. 使用C#创建自定义背景色/形状的菜单栏与工具栏

    C#对于菜单栏与工具栏都提供了统一的背景色,形状的渲染类,即ToolStripRenderer类,同时根据不同的情形,提供了多个继承类,分别是ToolStripProfessionalRender,T ...

  3. WPF的菜单栏,工具栏的简单使用

    1. 界面效果如下: 2. 页面 .xaml代码如下: <Window x:Class="MenuAndToolBar.MainWindow" xmlns="htt ...

  4. [ZETCODE]wxWidgets教程四:菜单栏和工具栏

    本教程原文链接:http://zetcode.com/gui/wxwidgets/menustoolbars/ 翻译:瓶哥 日期:2013年11月28日星期四 邮箱:414236069@qq.com ...

  5. Qt 学习之路 :菜单栏、工具栏和状态栏

    在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一 ...

  6. 三、PyQt5不同方法创建菜单栏、工具栏和状态栏

    创建菜单栏.工具栏和状态栏可以直接通过代码实现,也可以通过Qt Designer中的属性编辑器等实现.通过两种方法的学习可以加深理解,更好的掌握PyQt5. 一.菜单栏与状态栏 状态栏的设置比较简单, ...

  7. QT学习之菜单栏与工具栏

    QT学习之菜单栏与工具栏 目录 简单菜单栏 多级菜单栏 上下菜单栏 工具栏 简单菜单栏 程序示例 from PyQt5.QtWidgets import QApplication, QMainWind ...

  8. Python pyQt4/pyQt5 学习笔记2(状态栏、菜单栏和工具栏)

    例子:状态栏.菜单栏和工具栏 import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(sel ...

  9. 网络采集软件核心技术剖析系列(7)---如何使用C#语言搭建程序框架(经典Winform界面,顶部菜单栏,工具栏,左边树形列表,右边多Tab界面)

    一 本系列随笔概览及产生的背景 自己开发的豆约翰博客备份专家软件工具问世3年多以来,深受广大博客写作和阅读爱好者的喜爱.同时也不乏一些技术爱好者咨询我,这个软件里面各种实用的功能是如何实现的. 该软件 ...

随机推荐

  1. 【原则】常用windows开发 客户端工具 收集

    1.  Navicat Premium 推荐: mysql客户端, postgreSQL 客户端, Sqlite客户端 2.  robomongo 推荐:mongoDB客户端

  2. 10 Best TV Series Based On Hacking And Technology

    Technology is rapidly becoming the key point in human lives. Here we have discussed top TV shows whi ...

  3. vagrant WARNING: You are not using an encrypted connection

    开发环境:vagrant 1.7 + centos 6(i386) + LAMP Drupal版本:7.53 在vagrant LAMP开发环境中,给Druapl安装模块时,显示WARNING: Yo ...

  4. 获取input中的值

    先在input标签中添加一个id='getvalue'document.getElementById("getvalue").value;

  5. NSString和NSArray平时练习总结

    /*************************字符串练习****************************/ //创建字符串 //1.快速创建 NSString *str1 = @&quo ...

  6. 【ASP.NET】DataContract序列化,反序列化对象中包含用接口声明的属性时的处理方法

    为此对象添加KnownType属性(Attribute).类型为用接口声明的属性(Property)的所有可能类型.  示例如下: public interface IKey { [DataMembe ...

  7. 浅谈JavaScript中的apply,call和bind

    apply,call,bine 这三兄弟经常让初学者感到疑惑.前两天准备面试时特地做了个比较,其实理解起来也不会太难. apply MDN上的定义: The apply() method calls ...

  8. 一个线程间的通讯小程序__(Java_Thread_Inout.Output)

    //多线程通讯 //多个线程处理同一资源,但是任务不同 //等待唤醒方法: //wait():将线程变成为冻结状态,线程会被存储在线程池中; //notify():唤醒线程中的一个线程(任意的) // ...

  9. Git tricks: Unstaging files

    NOTE: Following content is directly reprinted from http://andrewberls.com/blog/post/git-tricks-unsta ...

  10. 使用Hint来优化执行计划

    最近看主管优化了一个HINT相关的查询 借此机会学习下HINT 参考Notes: Note 129385 - Database hints in Open SQL http://www.stechno ...