除了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. 十五、Android学习笔记_授权过程

    1.需要申请App Key和App Secret.不同的开发平台有不同的接入方式,可以参考文档,然后将这两个值放进去. 2.通过OAuth类实现认证,它会自动跳转到认证界面,进行授权,成功之后需要处理 ...

  2. PHP中大括号{}用法总结

    刚用到一个由字符串来设定对像属性名的功能.发现大括号的作用真强…. 1. 动态设置对象的属性名的使用:写法一(不能正确设置): $obj->$string[$key]; //这里只能使用$str ...

  3. 20150301—ASP.NET的Repeater

    Repeater与GridView等数据列表一样,都是用来显示数据库的信息的,其中Repeater是最基本的列表形式,其用法也比较灵活. 一.Repeater的位置: 工具箱-数据-Repeater ...

  4. php面向对象的多态

    多态是指使用类的上下文来重新定义或改变类的性质或行为,或者说接口的多种不同的实现方式即为多态.把不同的子类对象都当成父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需要 ...

  5. (转)Centos5.5安装MONO2.10.8和Jexus 5.0开启Linux平台.net应用新篇章

    注:本文只做本人记录使用,也可供大家参考,有兴趣的可以一起讨论. 安装步骤 1.yum –y update 2.安装Mono源码安装需要的库 yum -y install gcc gcc-c++ bi ...

  6. (转)Linux概念架构的理解

    英文原文:Conceptual Architecture of the Linux Kernel 摘要 Linux kernel成功的两个原因:(1)架构设计支持大量的志愿开发者加入到开发过程中:(2 ...

  7. 推荐5个应用 jQuery 特效的精美特效

    1.jQuery歌词同步的音乐播放器插件 精巧实用 之前我们分享过很多音乐播放器和视频播放器,很多播放器的UI界面都非常酷,特别是利用HTML5和CSS3实现的一些动画特效.今天要分享的一款基于jQu ...

  8. 一个简单的Spring测试的例子

    在做测试的时候我们用到Junit Case,当我们的项目中使用了Sring的时候,我们应该怎么使用spring容器去管理我的测试用例呢?现在我们用一个简单的例子来展示这个过程. 1 首先我们新建一个普 ...

  9. zz linux 下查看局域网内所有存活主机和MAC进址

    用namp对局域网扫描一遍,然后查看arp缓存表就可以知道局域内ip-mac的对应了namp比较强大也可以直接扫描mac地址和端口 进行ping扫描,打印出对扫描做出响应的主机: nmap -sP 1 ...

  10. n盏灯亮灭问题

    前几天看了华为的一个上机操作题,讲得是n盏灯亮灭问题,本质上还是数学问题,感觉很有趣,和大家分享一下,问题描述如下: 有n盏灯排成一排,依次标号1,2,…,n,每盏灯都有一根拉线开关,最初电灯都是关着 ...