- 75
- 0
- 约3.1千字
- 约 5页
- 2017-08-29 发布于重庆
- 举报
Cbuilder窗体设计
第4讲 窗体设计
1 基本概念
C++ Builder应用程序的界面主要是通过窗体来设计的。窗体是C++ Builder构造程序的基础,是其它VCL组件的容器。在一定意义上,可以认为:程序在运行时的窗体就是窗口。
PS:
在Windows编程中,窗体和窗口是两个不同的概念。窗体只是窗口的一个子集, 按钮、菜单、单选框等都是一个窗口。
Windows系统可以识别窗口,并为窗口的操作调用函数。当系统有事件发生,通知消息会发往相应的窗口,由窗口做出相应的响应。也就是说,系统的每个窗口均有相应的函数来处理窗口的所有事件。
PS:
在Windows系统中,有一个内核对象包含着每个应用程序所建立的窗口的列表,并赋给每个窗口一个唯一的值,这个值称为窗口的句柄(Handle)。
大部分应用程序都是通过窗体上的文字、图形图像、选择按钮以及菜单、工具条等控件和用户进行交互的。目前,随着多媒体和因特网的发展,窗体也顺应这种趋势,较以往的窗体有了一些改变。
窗体设计器是C++ Builder最实用、功能最强大的特征之一,它也是C++ Builder可视化开发环境的表现。使用窗体设计器,可以简单便捷地创建几乎所有的交互界面。
2 窗体的常用属性
在C++ Builder中,窗体是从TForm类继承的子类的对象,TForm类是VCL中的标准窗体类,它代表了一个空的窗体。TForm类有下列常用的属性(不要强制记忆,用熟了自然会记住。现在记不住怎么办?查帮助。):
AlphaBlend属性
该属性用来设置窗体是否以半透明的方式来显示。
AlphaBlendValue属性
该属性指定了窗体以半透明方式显示时的透明度。
BorderIcons属性
该属性指定了窗体是否具有最小化、最大化、关闭等系统按钮。
BorderStyle属性
该属性指定了窗体边界的特性,如是否为可调整大小等。
Caption属性
该属性指定了窗体的标题。我们在第一讲中已经使用到了此属性。
ClientHeight属性
该属性用于设置窗体客户区的高度,单位为像素。
ClientWidth属性
该属性用于设置窗体客户区的宽度,单位为像素。
Color属性
该属性用于设置窗体背景色。
Constraints属性
该属性用于设置窗体最大化和最小化后的尺寸。
Cursor属性
该属性用于设置窗体上鼠标的样式。
Enable属性
该属性用于设置窗体是否接收消息,包括鼠标消息、键盘消息及系统消息。
Font属性
该属性用于设置窗体上所使用的字体,它将影响窗体中所有的组件。
Icon属性
该属性用于指定窗体的图标。
Menu属性
该属性用于指定窗体的主菜单,它是一个TMainMenu类型的指针。
Name属性
该属性用于指定窗体对象的名称。
PopupMenu属性
该属性用于指定窗体的弹出式菜单,它是一个TPopupMenu类型的指针。
Visible属性
该属性用于指定窗体在运行时是否会显示。
WindowState属性
该属性用于指定窗体在运行时的初始状态。
以下是一些窗体在修改了部分属性后的样式:
修改Caption属性为“修改了标题栏” 修改AlphaBlend和AlphaBlendValue
修改BorderStyle属性,去掉最小化按钮 修改BorderStyle为bsNone,无边框窗体
PS:
关于制作Vista玻璃效果窗体的内容,将在第七章介绍。
3 窗体的常用方法
窗体对象继承了TForm类下的所有方法,常用的方法有:
Close方法
该方法用于关闭窗体。该方法执行后,系统将触发窗体的OnClose事件。
Hide方法
该方法用于隐藏窗体,使之不可见。此方法等价于将Visible属性置false。
Show方法
该方法用于以非模态方式显示窗体,使之可见。此方法等价于将Visible属性置true。
ShowModal方法
该方法用于以模态显示窗体。此时,只有当此窗体关闭后,系统才可以执行其后的代码。
Update方法
该方法用于强行刷新窗体。
4 窗体的常用事件
当触发一个窗体事件时,如果该事件的响应函数中有可执行的代码,那么就执行这些代码。我们需要知道的是,什么情况下触发了该事件并处理相关的代码。
4.1 创建窗体时触发的事件
OnCreate事件:当窗体创建时,首先触发OnCreate事件。
4.2 显示窗体时触发的事件
OnShow事件:当窗体创建后,显示窗体时所触发的事件。
OnActive事件:当窗体创建并显示后,此窗体便处理激活状态,拥有焦点,此时便触发OnActive事件。
OnResize事件:当窗体改变尺寸时触发的事件,这包括第一次显示。
OnPaint事件:当窗体被重新绘制时触发的事件,这窗体在显示时也要触发该事件。
4.3 窗体显示后能够触发
您可能关注的文档
- (出版中级要掌握的初级内容)书刊校对.doc
- (总结)动词被动语态.doc
- (功能性)电刺激.doc
- (GS-00-03-F05)装修指南.doc
- (地学专用)数学地质实验.doc
- (新)2009年读写2级练习A6卷-lj.doc
- (新)2009年读写2级练习(A1-B1卷)-gf.doc
- (新)2009年读写2级练习A9卷-llz.doc
- (新)2009年读写2级练习A7卷-zm.doc
- (楚星物流)张光登201004月清月结doc.doc
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- GB50424-2015 油气输送管道穿越工程施工规范.docx VIP
- 2025至2030果聚糖行业项目调研及市场前景预测评估报告.docx
- 初中语文文学常识最全汇总.docx
- 初中语文228条文学常识总汇.docx VIP
- BS EN 15551 2017 国外国际标准.pdf VIP
- 鲁教版(五四学制)(2024)六年级上册地理第二章 地图 单元测试卷(含答案).docx VIP
- 六年级上册数学量率对应问题专项.docx VIP
- 松下SA-PM18组合音响中文维修手册.pdf VIP
- 六年级上册数学复习练习:寻找单位“1”和列出等量关系式专项练习.docx VIP
- DB3705_T 11-2023 野大豆耐盐性鉴定技术规程.docx VIP
原创力文档

文档评论(0)