046ToolStrip类

本文介绍了Windows窗体中的TooIStrip控件,它用于创建专业的工具栏,可停靠在窗口的任意边框。TooIStrip是MenuStrip、StatusStrip和ContextMenuStrip的抽象基类,提供了自定义工具栏项的能力。文章详细讲解了如何创建和设置TooIStrip控件,包括添加按钮、设置停靠位置以及与菜单项事件的关联。
摘要由CSDN通过智能技术生成

 

目录

1.工具栏TooIStrip概述

2.TooIStrip控件的属性

3.创建工具栏


工具栏是一个与菜单栏同等重要的窗体界面元素。在MDI应用程序中,工具栏也能像菜单一样实现合并,即可以在主窗体的工具栏中放上全局通用的工具项,而针对特定子窗体的工具项在子窗体中设计,显示的时候与主窗体的工具栏合并显示。

1.工具栏TooIStrip概述

    Windows窗体中的工具栏控件用于显示一系列菜单选项的位图按钮。这样单击工具栏中的一个按钮,就相当于选择了一个菜单项。工具栏上的按钮通常包含图片,不包含文本,但它可以既包含图片又包含文本。除了按钮外,工具栏上也可以包含组合框和文本框。通常情况下,工具栏包含的按钮和菜单与应用程序菜单结构中的选项相对应,以提供对应用程序的常用功能和选项的快速访问。
    工具栏TooIStrip与MenuStrip一样具有专业化的外观和操作方式。通常情况下,工具栏停靠在其父窗口的顶部,也可以停靠在窗口的任百边。用户可以改变工具栏的尺寸,或随意拖动工具栏。当将鼠标指向工具栏按钮时,可以显示工具提示,给出该按钮的用途信息。工具提示是用于简述按钮或者菜单用途的一个小的弹出式窗口,这对只显示图标的工具栏按钮非常有用。
    实际上,TooIStrip是MenuStrip,StatusStrip和ContextMenuStrip的抽象基类。TooIStrip控件为工具栏相关项(如菜单、按钮和文本框)的容器,即工具栏中的选项是在TooIStrip中显示。而TooIStrip的派生类则以其他方式(如在菜单中或在状态栏中)显示选项。

ToolStrip 控件体系结构

    TooIStrip控件作为一个容器,也就可以通过其Items集合,访问TooIStrip中的所有工具栏选项。这些工具栏选项都是从ToolStripltem抽象类中派生的。工具栏选项可以直接从TooIStripltem类继承,也可以通过TooIStripControLHost或TooIStripDropDownltem间接从ToolStripltem继承。TooIStripltem继承层次结构如图。

                                                         TooIStripltem的选项类型

项类型 用户界面元素
TooStripLabel 表示工具栏中的一个标签
ToolStripButton 表示工具栏中的一个按钮
ToolStripSeparator 表示工具栏和菜单中的水平或垂直线
TooStripControlHost 包含寄宿的控件的用户界面元素
TooStripSpiltButton 显示为一个右端带有下拉按钮的按钮࿰
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
tooltrip漂浮(在toolstrippanel和之外) 具体设计思想如下: 放置到ToolStripPanel上的,当工具栏浮动的时候,事实上是改变了其所在的容器对象,从其所在的ToolStripPanel移动到一个漂浮的容器上,因此要实现工具栏的浮动必须解决以下两个问题:     必须有一个浮动的容器来承载ToolStrip对象。     须知道ToolStrip对象何时改变其所在的容器,即在浮动的容器和主窗口上ToolStripPanel之间停靠。   对于第一个问题,我们的解决方案是动态的创建一个Form作为浮动的容器,命名为ToolStripFloatWindow,该Form对象具有以下的属性:     FormBorderStyle = FixedToolWindow 边框样式     ShowInTaskbar = false 不在任务栏显示     ShowIcon = false 不显示窗口图标     TopMost = true 在所有窗口之上   为了解决第二个问题,我们查阅MSDN获知,当用鼠标拖拽ToolStrip对象释放鼠标时会触发其EndDrag事件。 我们在这个事件的处理方法中判断当ToolStrip对象的位置被移动到所在的ToolStripPanel之外的时候,创建ToolStripFloatWindow对象,并将ToolStrip对象移动到ToolStripFloatWindow上;要使ToolStrip对象恢复到原来的窗体上只要判断ToolStripFloatWindow对象的位置是否移动到了ToolStripPanel上, 当条件满足时将ToolStrip对象移动回ToolStripPanel中并销毁ToolStripFloatWindow对象。   此外,还要解决当ToolStrip对象放置到ToolStripFloatWindow对象上时, ToolStripFloatWindow对象必须与ToolStrip对象的尺寸一致。 还有ToolStripFloatWindow对象被点击了关闭按钮时不能将自己关闭。我们可以做两个来实现上述的思路。 ToolStripFloatWindow继承自Form。 MyToolStrip 继承自ToolStrip。增加了相应的属性和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ngbshzhn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值