Delphi程序设计教程第6章制作工具栏及状态栏.ppt

上传人:本田雅阁 文档编号:3480097 上传时间:2019-09-01 格式:PPT 页数:36 大小:373.52KB
返回 下载 相关 举报
Delphi程序设计教程第6章制作工具栏及状态栏.ppt_第1页
第1页 / 共36页
Delphi程序设计教程第6章制作工具栏及状态栏.ppt_第2页
第2页 / 共36页
Delphi程序设计教程第6章制作工具栏及状态栏.ppt_第3页
第3页 / 共36页
Delphi程序设计教程第6章制作工具栏及状态栏.ppt_第4页
第4页 / 共36页
Delphi程序设计教程第6章制作工具栏及状态栏.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《Delphi程序设计教程第6章制作工具栏及状态栏.ppt》由会员分享,可在线阅读,更多相关《Delphi程序设计教程第6章制作工具栏及状态栏.ppt(36页珍藏版)》请在三一文库上搜索。

1、第6章 制作工具栏及状态栏,6.1 面板组件(Panel) 6.2 快捷按钮组件(SpeedButton) 6.3 制作工具栏 6.4 制作状态栏 6.5 使用工具栏组件设计工具栏 6.6 使用状态栏组件设计状态栏,退出,6.1 面板组件(Panel),面板组件 在标准(Standard)页标签上。 该组件用来在窗体上放置一面板,在面板上可以放置其它的组件。 6.1.1面板组件的属性 1BevelInner属性 BevelInner属性确定面板组件的内部斜面。,2BevelOuter属性 BevelOuter属性确定面板组件的外部斜面。 3. BevelWidth属性 BevelWidth属性

2、确定面板的内部斜面和外部斜面的宽度(单为像素)。BevelInner属性确定内部斜面如何出现;BevelOuter属性确定外部斜面如何出现。使用这三个属性就可以改变面板的外观。,4BorderWidth属性 BorderWidth属性用来确定面板边界的宽度(单位象素)。默认值为0,即没有边界。 5. BorderStyle属性 BorderStyle属性确定面板边界的类型:bsNone,表示无边界;bsSingle表示单线边界。 6. Ctrl3D属性 Ctrl3D属性确定面板是否为立体的。,7. Cursor属性 Cursor属性用来确定当鼠标指针移动到面板上时,鼠标指针的形状。 6.1.2

3、 面板组件的事件 与面板组件有关的主要事件有单击事件(OnClick)与双击事件(OnDblClick)、OnEnter、OnExit、OnStartDrag、OnEndDrag等事件,6.2 快捷按钮组件(SpeedButton),快捷按钮组件 在附加页标签上。 6.2.1 快捷按钮组件的属性 1AllowAllUp属性 该属性为布尔型,它确定该快捷按钮所在组中的所有快捷按钮是否可同时不选定(按钮在弹起的状态)。因此,该属性只能用在成组的快捷按钮上(即每一快捷按钮的GroupIndex属性非零),若GroupIndex为零,则该属性无效。,默认值为False,就是成组的快捷按钮中有一个总是选

4、定的,使用Down属性确定预选定的快捷按钮;若该属性为的值为True,则成组的快捷按钮没有选定的。 改变成组中一个快捷按钮的AllowAllUp属性值,将改变该组中的所有AllowAllUp属性值。 也可对成组的单个位图按钮使用AllowAllUp属性(GroupIndex的值大于零), 从而该按钮的选定与不选定由用户单击来确定,就像复选框的工作方式一样。要使得单个的快捷按钮像这种方式工作,设置其GroupIndex的值大于零(但与任何其它快捷按钮的GroupIndex值不同),并且设置AllowAllUp属性的值为True。,2. Down属性 该属性为布尔型,它确定该按钮是处于选定还是不选

5、定状态。默认值为False,即处于不选定状态。 虽然对一组快捷按钮的AllowAllUp属性都可以设置为False,但必须对一个快捷按钮设置Down属性。也可在运行时设置Down的属性,无须用户单击选定快捷按钮。,3Glyph属性 Glyph指定出现在快捷按钮上的位图(表示该按钮的功能)。使用对象编辑器上该按钮后的按钮可选择位图文件(后缀为.BMP),或在运行时指定位图文件。 在快捷按钮上的单个位图中可以指定多达4个的图像。 对只有一个图像的情形,Delphi对不同的状态使用第一个图像,只是暗淡不同而已。对在位图中有多个图像的情形时,必须使用NumGlyphs属性指定图像号。所有的图像必须大小

6、相同,水平并排排列。 单击对象编辑器的该属性旁边的值栏,就会打开一个图形编辑器。在图形编辑器中选择Load按钮来选择要使用图像的.BMP文件。,4GroupIndex属性 该属性为整型变量,它确定哪一快捷按钮加入到组中。 默认值为0,表示该快捷按钮不属于组。当用户单击该组件时,它处于凹下状态,而当用户释放鼠标时,它就恢复正常的弹起状态。 具有相同GroupIndex属性(非0)的快捷按钮,就在相同的组中。当用户单击组中的一个快捷按钮时,它就处于凹下状态,直到用户再次单击该组中的另一快捷按钮为止。以这种方式使用的按钮给用户以互斥的选择。,5Layout属性 Layout属性确定出现在位图按钮或加

7、速按钮上图像的位置。 6Margin属性 该属性为整型变量,它确定在图形的边界(由Glyph属性指定的)和按钮的边界间的像素数。 边沿分界是由图像和文本(由Layout属性指定)的分布确定的。如Layout的值为blGlyphLeft,在图像的左边和按钮的左边则出现边沿。若Margin为3,则边沿为3个像素,若Margin为0,则没有边沿。 默认值为-1,表示图像和文本(由Caption属性指定)居中。,7NumGlyphs属性 NumGlyphs指定用于加速按钮上的图像(由Glyph属性指定)数。 若在一个位图中有多个图像,则必须使用该属性指定位图中的图像数。所有的图像必须具有相同的大小,并

8、排排列。默认值为1,有效值为1到4。也就是说最多4个图像。 在按钮上显示哪一个图像是由按钮的状态确定的,如表6-3所示。 对于只有一个图像的情形,Delphi对不同的状态使用相同的图像,只是暗淡不同而已。,8Spacing属性 该属性为整型变量,它确定出现在加速按钮图像的位置。即在图像(由Glyph属性指定)和文本(由Caption属性指定)之间的像素数(正数时)。默认值为4。若为0,则其间没有空隙;若为-1,则文本出现在图像与按钮边界中央。 6.2.2 快捷按钮组件的事件 与快捷按钮组件有关的主要事件有单击事件(OnClick)与双击事件(OnDblClick)。,6.3 制作工具栏,在窗体

9、上建立工具栏是很方便的。首先,在窗体中加入面板,并且将其Align属性设置为alTop,这时面板会保持它原来的高度,但可调整它的宽度至充满整个窗体,甚至当改变窗体的大小时,面板也可自行调整它的宽度。然后在其中加入快捷按钮或其它的组件。,可以在窗体中添加许多的工具栏。这时,它们会根据加入的顺序垂直排列在窗体的上端(最后加入的工具栏在最上端)。 快捷按钮有三种可能的操作模式。它们可以像正常的按钮一样、单击时切换状态或像一组单选钮一样。 对快捷按钮使用Glyph属性来指定图样。可以通过快捷按钮的表现来给使用者了解按钮现在的状态和功能,这包括利用Down属性表示按钮是否被按下,使用Enabled属性表

10、示按钮是否可用。,为了表示一组互斥的选择,可通过GroupIndex属性对快捷按钮进行分组,将相关的快捷按钮放在同一组中,因而当单击该组中的一个按钮时,其它的按钮都会凸起来。 在对快捷按钮分组后,要定义一个切换键:单击该按钮,可使该组中没有按钮被选定。定义切换键使用快捷按钮的AllowAllUp属性。 制作完整的工具栏,请参考6.4中的例子。,6.4 制作状态栏,制作状态栏,可在窗体中加入一个面板组件,并且将它的Align属性设置为alBottom,并清除Caption属性的值。 对状态栏可以将它分成几个独立的状态框(加入新的面板组件)或使用BevelInner及BorderWidth属性来产

11、生立体的效果。 更新状态栏的信息可以反应应用程序的当前状态。状态栏显示的文字就是面板组件的Caption属性值,可以在事件处理程序中加入改变Caption属性值的程序代码来更新状态栏,以反应当前的程序状态。,6.5 使用工具栏组件设计工具栏,6.5.1 工具栏组件 工具栏组件 在Win32页标签上,可用来管理和安排可视的组件。使用工具栏组件具有下列优点: 在工具栏组件上按钮的大小和间距自动保持一致;其它的控件也自动保持它们的相对位置和高度;若在一行中按钮显示不下,可以自动折行显示。,1. 工具栏组件的属性 Align属性 Align属性用来确定该组件与窗体的对齐方式,也就是在窗体中的位置。 A

12、utosize属性 该属性为布尔型,当为True时,工具栏的大小随着内容的变化而变化。 ButtonHeight属性 该属性为整型,用来确定工具栏上的按钮和其它组件的高度,单位为像素。, ButtonWidth属性 该属性为整型,用来确定工具栏上的按钮和其它组件的宽度,单位为像素。 Flat属性 该属性为布尔型,当为True时,工具栏上按钮的边框由普通边框变为弹出式边框。平时按钮和工具栏融为一体,当鼠标指针移动到按钮上时,按钮自动从工具栏上浮现出来。, Images属性 列出工具栏按钮上出现的图标。每一按钮的ImageIndex属性确定显示指定的图标。若不指定图标,则按钮上不显示图标。 Lis

13、t属性 该属性为布尔型,当为True时,图标占据按钮的左半部,标题在右半部;否则图标占据按钮的上半部,标题在下半部。 ShowCaption属性 该属性为布尔型,当为它True时,工具栏上的所有按钮显示文本(即Caption属性的内容,这时可能改变按钮的大小),否则不显示。,2. 工具栏组件的事件 与工具栏组件有关的主要事件有单击事件(OnClick)与双击事件(OnDblClick)。 6.5.2 工具栏按钮组件 工具栏按钮(ToolButton)组件是一种特殊的按钮组件,它只配合工具栏组件使用,不能放置在其他窗口组件上。,要在工具栏组件上添加工具按钮,右单击工具栏组件,在弹出的快捷菜单中选

14、择“New Button”菜单命令即可生成一个空白的工具栏按钮,生成的工具栏按钮依次在工具栏组件上排列。 工具栏组件自己生成工具栏按钮,因此随着工具栏组件的移动或隐藏,工具栏按钮也进行相应的移动或隐藏。,1. 工具栏按钮的属性 Grouped属性 该属性为布尔型,当为它True并且Style属性的值为tbsCheck时,则同一组中的按钮一次只能选定一个。 对按钮分组右单击工具栏组件,在弹出的快捷菜单中选择“New Separator”菜单命令即可。 ImageIndex属性 该属性为整型,用来确定出现在工具栏按钮上的图标。若其值为0,则工具栏按钮将显示工具栏组件Images属性所确定的图标列表

15、中的第1个图标。, Down属性 该属性为布尔型,当为它True时,工具栏按钮被选定,这时按钮为凹下的。当按钮不选定时,按钮为凸起的。 Style属性 确定工具按钮的显示风格。 2. 工具栏组件的事件 与工具栏组件有关的主要事件有单击事件(OnClick)。,6.5.3 设计工具栏 1. 工具栏设计的操作过程 设计工具栏采用下列的操作过程: 第1步:设置图表列表。 在Win32页标签中选择图表列表组件 ,将其放到窗体上。双击窗体上的图标列表组件,打开图标列表编辑框(如图6-3所示)。,在该对话框中添加工具栏按钮要使用的图标。 第2步:设置工具栏。 在窗体上添加工具栏按钮组件,并设置其属性。 第

16、3步:设置工具栏按钮。 在工具栏组件上添加工具栏按钮,并设置其属性。 第4步:编写按钮事件的处理程序。 第5步:运行程序,查看设置后的效果。,6.6 使用状态栏组件设计状态栏,状态栏组件 位于Win32页标签中。 6.6.1 状态栏组件的属性 1. Align属性 Align属性用来确定该组件与窗体的对齐方式,也就是在窗体中的位置。其取值如表6-5所示。默认值为alBottom,即状态栏位于主窗口的底部。,2. SimplePanel属性 该属性为布尔型,当为True时,状态上只有单个面板,面板上显示的内容为SimpleText属性的值,否则状态栏上有多个面板。 3. SimpleText属性

17、 该属性为字符串型。若状态栏上只有单个面板,该属性的值就是状态栏上显示的内容。 4. SizeGrid属性 该属性为布尔型,当为True时,可在运行时改变状态栏的大小。,5. Canvas属性 该属性为只读型的,在运行时提供对状态栏上绘图的存取。 6. Panels属性 该属性包含了状态栏的各个显示面板,在设计时可向状态栏组件添加、删除、修改面板。其方法是单击该属性旁的“”按钮,打开面板编辑器即可。 6.6.2 在状态栏组件中添加或删除显示面板 在状态中添加或删除面板面板采用下面的操作过程: 第1步:单击状态栏组件Panel属性旁的“”按钮,打开面板编辑器,如图6-5所示。,第2步:在面板编辑

18、器窗口中添加、删除或改变面板的顺序。 第3步:设置面板组件的属性。 在对象结构浏览中选定要设置面板属性的组件,在对象编辑器中进行属性的设置。可设置的属性主要有:,1. Bevel属性 用于确定面板的显示风格,其取值包括:Lowered(以下凹方式显示面板)、Raised(以上凸方式显示面板)、None(以平面方式显示面板)。 2. Algnment属性 用于确定面板中字符串的对齐方式,其取值包括:Leftjustify(左对齐)、Rightjustify(右对齐)、Center(居中对齐)。,6.6.3 状态栏同步显示过程 要实现同步显示功能,也就是当鼠标在菜单项上或工具栏上移动时,状态栏上同步显示相关的提示信息,这将使用到下列组件:状态栏组件;菜单、工具栏和工具按钮组件;Application组件、窗体组件。,这四种组件之间协同工作的过程如下: 第1步:设置菜单组件、工具栏组件和工具按钮组件。 这些组件的Hint属性为需要在状态栏上同步显示的提示信息。 第2步:编制响应Application组件的Hint事件,来完成在状态栏上显示体式信息。 当鼠标在菜单项上或工具栏按钮上移动时,Application对象将鼠标指针所在处的菜单项或按钮的Hint属性的值复制到Application的Hint属性中,并触发Application对象的OnHint事件。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1