龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

C++ Builder 设计工具栏和酷栏

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
4.8 设计工具栏和酷栏 工具栏是一面板,通常在窗体顶端横向放置(在菜单栏之下),其中包含按钮和其他控件。酷栏(Coolban又称rebar)也是工具栏的一种,它将控件显示在可移动并可

  4.8 设计工具栏和酷栏

工具栏是一面板,通常在窗体顶端横向放置(在菜单栏之下),其中包含按钮和其他控件。酷栏(Coolban又称rebar)也是工具栏的一种,它将控件显示在可移动并可改变大小的段中。若有多个面板排列在窗体顶端,将按加入顺序垂直叠放。

  

  工具栏中可加入任意种类的控件。除按钮之外,还可放置彩色网格、滚动条、标签等等。有一些方法用于将工具栏加到窗体中:

   在窗体中放置面板(TPanel)组件并在其中添加控件(一般为快速按钮)。

   使用工具栏组件(TToolBar)代替TPanel,并在其中添加控件。TToolBar可治理按钮和其他控件,按行排列它们并可自动调整它们的大小和位置。若在工具栏中使用工具按钮(TToolButton)控件,TToolBar可方便地按功能分组按钮及提供其他显示选项。

   使用酷栏(TCoolBar)组件并在其中添加控件。酷栏在独立地可移动并可改变大小的段中显示控件。

  

  如何实现工具栏依靠于应用程序。使用Panel组件的优点是可控制工具栏的总体。通过使用工具栏和酷栏组件,可确保应用程序有Windows应用程序的布局,因为所用的是纯粹的Windows控件。若将来操作系统控件发生变化,你的应用程序也会随之改变。另外,因为工具栏和酷栏组件依靠于Windows的通用组件,所以应用程序需要COMCTL32.DLL的支持。WinNT3.51应用程序不支持工具栏和酷栏。接下来的部分介绍了:

  

   使用面板组件增加工具栏及相应的快速按钮组件。

   使用工具栏组件增加工具栏及相应的工具按钮组件。

   使用酷栏组件增加酷栏。

   响应点击。

   增加隐藏的工具栏和酷栏。

   隐藏及显示工具栏和酷栏。

  

  4.8.1 使用面板组件增加工具栏

  

  要使用面板组件将工具栏加入窗体:

  1) 把一面板组件加入窗体(从组件面板的Standard页)。

  2) 将面板的Align属性设为alTop。这样是对齐窗体的顶端,面板保持其高度,但其宽度始终完全匹配窗体客户区宽度,即使该窗口的尺寸发生变化。

  3) 把快速按钮或其他控件加入面板中。快速按钮是设计来工作于工具栏面板中的。它通常没有标题,只有一个小的图形(称为glyph)用于

  

  表示按钮的功能。快速按钮有三种可能的操作方式:

   与一般的按钮作用相同。

   被按下时在开和关两种状态间切换。

   与一组单选按钮作用相同。在工具栏加入快速按钮,执行下列步骤:

   在面板中增加一个快速按钮。

   给快速按钮分配glyph。

   设置快速按钮的初始状态。

   创建一组快速按钮。

   答应切换按钮。

  

  1.在面板中增加快速按钮为将快速按钮加入工具栏,可将快速按钮组件放入面板(从组件面板的Additional页)。快速按钮的“拥有者”是面板而不是该窗体,因此移动或隐藏面板也将移动或隐藏快速按钮。

  面板的缺省高度是41,快速按钮的缺省高度是25。若将每个按钮的Top属性都设置为8,它们将垂直居中。缺省的网格设置锁定了快速按钮的垂直位置。

  

  2.为快速按钮分配glyph

  每个快速按钮需要一幅图像(glyph)来向用户表示按钮的作用。若只为快速按钮提供一幅图像,按钮会控制这幅图像用以表示按钮是否处于被按下、未被按下、被选中或被禁用等状态。也可以为每个状态各自提供特定图像。

  

  虽然可在运行时分配不同的glyph,但通常应在设计时为快速按钮分配glyph。要在设计时为快速按钮分配glyph:

  1) 选择快速按钮。

  2) 在对象观察器中选择Glyph属性。

  3) 双击Glyph旁的Value列以打开PictureEditor,并选择想要的位图。

  

  3.设置快速按钮的初始状态

  快速按钮使用其外观提示用户它们的状态和作用。因为它们没有标题,所以使用正确的外观提示来帮助用户非常重要。

  表4-3列出了可设置快速按钮外观的一些操作:

  

若应用程序有一个缺省的绘图工具,要确保应用程序启动时其在工具栏中的按钮是被按下状态。这时,可把按钮的GroupIndex属性设为非零值,Down属性设为true。

  

  4.创建成组的快速按钮

  一系列快速按钮通常表示一组互斥选项。在这种情况下,需要将相关的按钮分为一组,这样当单击其中任何按钮时都将使组中其它按钮被弹起。将每个快速按钮的GroupIndex属性设为一相同值可把很多快速按钮分为一组。最简单的方法是将分组的按钮全部选定,然后以成组设置的方式将选定的组的GroupIndex属性设为单一值。

  

  5.答应切换按钮

  有时需要在分组中单击一个已被按下的按钮来使其弹起,以便使分组中没有按钮是按下的状态。这样的按钮被称作切换按钮。使用AllowAllUp可将一个分组按钮设为切换按钮:单击一次,按钮被按下;再次单击,按钮弹起。要将一个分组按钮设为切换按钮,可将其AllowAllUp属性设为true。

  将一个分组按钮的AllowAllUp属性设为true会自动地将该分组所有按钮的AllowAllUp属性设为相同值。这使得分组既可作为标准分组,一次只有一个按钮被按下,也可答应组中每个按钮同时都是弹起的状态。

  

精彩图集

赞助商链接