除了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. 【ERROR】---Error executing "adb devices":ADB server didn't ACK

    搭建环境     ionic emulate android 的时候出现问题 端口占用,找到占用端口的程序,结束进程再启动 重新ionic emulate android 还是报错,闪了一下说fail ...

  2. c#中的方法的定义和运用

    首先,理解下,函数和方法: 其实两者是一样的,只是个叫法不同. C#中叫做Method,中文叫方法: C++中称为Function,中文叫函数. 函数是Function,多指以前面向过程编程时候,将逻 ...

  3. 可以伸缩的查询面板 (searchBar)

    最近有这样的需求,一个页面查询条件特别多,一次全部展示出来的话就占用大量的空间,所以分成了两类,简单搜索和高级搜索,当点击高级搜索的时候就会全部显示. 这样就存在一个问题,页面(navTab,dial ...

  4. iOS使用keychain存储密码

    iOS设备中的Keychain是一个安全的存储容器.通常情况下,可以用NSUserDefaults存储数据信息,但是对于一些私密信息,比如账号.密码等等,就需要使用更为安全的keychain了.苹果自 ...

  5. 理解C#系列 / 核心C# / 编译参数

    编译参数 编译控制台应用程序 csc 源文件.cs 编译Windows应用程序 csc /t:winexe 源文件.cs 编译类库应用程序 csc /t:libray 源文件.cs 编译引用类库的应用 ...

  6. 用Windows API函数(CreateFile/ReadFile/WriteFile/CloseHandle)完成文件拷贝程序(初级版)

    文件拷贝程序 程序类型:Console 参数:源文件名   目的文件名 要求:1.只能使用Windows API函数(CreateFile/ReadFile/WriteFile/CloseHandle ...

  7. JavaScript ES7 中使用 async/await 解决回调函数嵌套问题

    原文链接:http://aisk.me/using-async-await-to-avoid-callback-hell/ JavaScript 中最蛋疼的事情莫过于回调函数嵌套问题.以往在浏览器中, ...

  8. VMware虚拟机中设置端口映射(转载)

    VMware Workstation提供了两种虚拟机上网方式,一种bridge,一种NAT,bridge可以获得公网地址,而NAT只能是内网地址了. NAT相当于把主机当成了一个NAT转换器,我们可以 ...

  9. C# ProperTyGrid 自定义属性

    C# 如果要实现自定义属性必须要需要实现接口ICustomTypeDescriptor // 摘要:   //     提供为对象提供动态自定义类型信息的接口.   public interface ...

  10. Oracle 摘去数据块的面纱

    Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 00018000h 6 A2 0 0 0c 0 80 3 8b 61 15 0 0 0 3 4 type frmt spa ...