尽管C++Builder的组件种类繁多,每种组件又都有许多不同的属性,但是在这些众多的属性中有相当一部分是大多数组件所共有的。因此我们应当主要掌握这些共有组件。

在设计时设置属性一般是通过属性窗口来进行的。在属性窗口设置组件属性的操作步骤如下: 1) 打开相应对象的属性窗口。 2) 从属性列表中选定属性名称。 3) 在属性窗口的右列输入或选择新的属性值。注意:有些属性在设置值右侧有…按钮,单击该按钮会出现相应的设置对话框,设置值需要在对话框中选定。

在代码中设置组件属性的方法是:对象名称->属性名称 = 设置值;

下面我们来介绍一些主要组件的主要属性。

窗体form的属性:

1.Caption:标题。
是窗体和各种可视化控件的共有属性,用来指定窗体标题栏中的说明文字,默认与控件名相同,但程序员可以在对象监视器和代码中修改。在代码中修改的格式为:Form->Caption = "da";// da表示程序员输入的标题。
通常,对于Windows系统中的多文档界面( MDI )应用程序,当主框架窗口中的子窗口以最大化显示的时候,应用程序的标题栏中显示的内容为“ <应用程序名> - <打开的文档名>”;当子窗口以非最大化窗口显示的时候,主框架窗口中只显示应用程序的名称,子窗口有自己的标题栏,其中显示该窗口打开的文件名。所以,当窗体的显示方式发生了改变后,应该立即改变标题栏中的内容。

2.Name:变量名。
是窗体和所有控件的共有属性,系统给予其默认名字,但程序员可以在对象监视器修改,不要在代码中修改。 通常,应该在系统开发的设计阶段就将整个工程中所有窗体的名称确定,然后在编程阶段,根据设计文档修改窗体的Name属性。一般情况下,不要在程序运行期间通过代码修改Name属性。

3.Enabled:可操作性。
决定了对象在运行时是否允许用户进行操作。它是逻辑型:true表示允许用户操作并可对其操作作出响应;false表示禁止用户操作,此时对象呈灰色。
程序员可以在对象监视器和代码中修改属性Enabled。在代码中修改的格式为:Form-> Enabled = da;// da可以是true或false。

4.Visible:可见性。
决定了对象在运行时是否可见。 它也是逻辑型:true表示可见;false表示不可见,但它不会影响其在设计时的可见性。
程序员可以在对象监视器和代码中修改属性Visible。在代码中修改的格式为:Form-> Visible = da;// da可以是true或false。

5.Height,Width,Top和Left:大小与位置。
分别给出了组件的大小与位置。其中Height和Width指出了组件的高度与宽度,Top与Left指出了组件在窗体上的位置,Top设置上边界,left设置左边界。这些属性一般不需要进行精确设置,在实际设计时只要使用鼠标直接对组件操作即可以达到要求。
程序员可以在对象监视器和代码中修改上述属性。在代码中修改的格式为:对象名称->属性名称 = 设置值;

6.Font:字体。
用来设置窗体或组件中文字的字体、颜色和字号等。如果将窗体中组件的属性ParentFont设置为True,那么该组件的字体设置就与其父级窗体的字体设置完全一样了。
所以在程序设计的时候,为了保持整个系统风格的统一,应该将工程中的窗体风格尽量一致,可以先设置窗体的Font属性,然后将窗体中所有组件的ParentFont设置为True就可以了。一般不要单个地对窗体中的组件进行Font属性的设置。

7.Color:颜色。
用来设置窗体(背景)的颜色。
程序员可以在对象监视器和代码中修改属性Color。在代码中修改的格式为:Form->Color = da;// da可以是系统提供的clRed等常量,也可以是数值。

8.BorderIcons:窗体图标。
用来指定窗体标题栏上的图标,可以设置为下列数值:
• biSystemMenu:可以通过点击标题栏左边的图标或在标题栏上单击鼠标右键来显示控制菜单。控制菜单有时也称为系统菜单。 
• biMinimize:在标题栏右边显示最小化按钮。
• biMaximize:在标题栏右边显示最大化按钮。
• biHelp:在标题栏右边显示帮助按钮。只有窗体的BorderSytle属性设置为bsDialog或者窗体属性BorderIcons中不包括biMinimize和biMaximize时,biHelp设置才有效。
下面举例说明属性BorderIcons的用法。在通过菜单File | NewApplication新建的应用程序中,窗体的BorderIcons属性默认设置为:[biSystemMenu , biMinimize , biMaximize ],可以在窗体中增加一个按钮组件,在其默认事件OnClick的处理过程中添加下面的一段代码: void __fastcall TForm1::Button1Click(TObject *Sender) { TBorderIcons tempBI = BorderIcons; tempBI >> biMaximize; //删除集合对象中的最大化按钮 BorderIcons = tempBI; } 程序执行后,如果按下按钮后,则标题栏上的最大化按钮就失效了(变成灰色)。如果要找回最大化按钮,则需要将最大化按钮添加到集合中。增加第二个按钮组件,在其默认事件OnClick的处理过程中添加下面的一段代码: void __fastcall TForm1::Button2Click(TObject *Sender) { TBorderIcons tempBI = BorderIcons; tempBI << biMaximize; //将最大化按钮添加到集合中 BorderIcons = tempBI; } 程序执行后,按下第二个按钮,标题栏上的最大化按钮就恢复了。要删除或添加biSystemMenu或biMinimize属性,也可以采用类似的方法。
补充:(1)operator << (addition) 声明:Set&_fastcall operator <<(const Tel); 说明:添加一个新元素到集合对象中。(2)operator >> (subtraction) 声明:Set&_fastcall operator >>(const Tel); 说明:删除集合对象中的一个元素。

9. BorderStyle:窗体外观。
用来设置窗体的外观和边框,可以指定为下面的数值: 
• bsDialog:窗体为标准的对话框,边框大小不可以改变。 
• bsSingle:窗体具有单线边框,大小不可以改变。 
• bsNone:窗体没有边框,也没有标题栏,边界的大小不可以改变。 
• bsSizeable:边框大小可变的标准窗体。
• bsToolWindow:风格同bsSingle,只是标题栏比较小。另外,对于这种风格的窗体,属性BorderIcons中设置的biMinimize和biMaximize并不起作用。
• bsSizeToolWin:风格同bsSizeable,只是标题栏比较小。对于这种风格的窗体,属性BorderIcons中设置的biMinimize和biMaximize并不起作用。
窗体属性BorderIcons的设置与属性BorderStyle的设置可能会互斥,比如属性BorderIcons的biMinimize和biMaximize会与属性BorderStyle的bsDialog冲突,属性BorderIcons的biHelp会与属性BorderStyle的bsSizeable冲突。
程序员可以在对象监视器和代码中修改属性BorderStyle。在代码中修改的格式为:BorderStyle = da; // da表示上述的数值之一。

10.FormStyle:窗体类型。
用来指定窗体的类型。从窗体类型的角度来看,Windows环境中的应用程序可以分为下面的三类: 
1) 多文档界面( MDI )应用程序:一般这种应用程序具有一个父级窗口和多个子窗口,可以同时打开多个文档,分别在多个子窗口中显示。比如常用的字处理软件Word等,可以同时编辑多个文档。 
2) 单文档界面( SDI )应用程序:这种应用程序同时只能打开一个文档。比如Windows系统附件中自带的“记事本”程序,只能同时编辑一个文本文件。 
3) 对话框应用程序:这种应用程序的主界面基于一个对话框类型的窗体。比如Windows系统中自带的“扫雷”游戏程序。此外,有些应用程序在运行期间可以总是显示在桌面的最前端,比如Windows98中的“程序| 附件| 系统工具| 系统监示器”,如果在菜单上选中了“查看(V) | 前端显示( A )”,则系统监示器会一直显示在其他应用程序的窗口之上。
属性FormStyle可以分别实现上面所说的各种类型的应用程序,取值如下: 
• fsNormal:普通类型的窗体。既不为MDI应用程序的父级窗口,也不为MDI应用程序的子窗口。
• fsMDIChild:MDI应用程序中的子窗体。 
• fsMDIForm:MDI应用程序中的父窗体。 
• fsStayOnTop:在桌面最前端显示的窗体。通常不要在程序运行期间改变窗体的类型。

11.Icon:图标。
用来指定标题栏中显示的图标。单击对象观察器Icon属性右边的省略号按钮,在弹出的Picture Editor对话框中点击Load . . .按钮,就可以装入一个制作好的图标。
如果需要动态地改变窗体Form1中的图标,可以调用下面的过程: Form1-> Icon->LoadFromFile(“MyIcon,ICO”); 其中MyIcon,ICO是要在窗体Form1标题栏中显示的图标文件名。
下面举例说明属性Icon的用法。在通过菜单File | NewApplication新建的应用程序中,窗体的Icon属性默认设置为空,可以单击对象观察器Icon属性右边的省略号按钮,在弹出的Picture Editor对话框中点击Load . . .按钮,就可以装入一个制作好的图标(我载入了一个红五星)。然后我们动态地改变窗体Form1中的图标。可以在窗体中增加一个按钮组件,在其默认事件OnClick的处理过程中添加下面的一段代码: void __fastcall TForm1::Button1Click(TObject *Sender) { Form1->Icon->LoadFromFile("E:\\qt\\图片素材库\\temp\\Heineken.ICO"); } 程序执行后,如果按下按钮后,窗体Form1中的图标变成了一朵绿花。下图是说明属性Icon用法的一个程序截图:左右两个截图分别示点击按钮前后的情况。

12.Position:窗体位置。用来描述窗体的大小和显示的位置。可以是下列数值: 
• poDesigned:窗体显示的位置和大小同设计期间的一致。 
• poDefault:窗体每次显示时,与上次比较,往右下角移动了一些位置;窗体的高度和宽度由Windows决定。 
•poDefaultPosOnly:窗体以设计期间的大小显示;窗体显示的位置较上次向右下角移动了一些。如果窗体以设计时的大小不可以在屏幕上完全显示,就移动到屏幕的左上角显示。 
• poDefaultSizeOnly:窗体以设计期间的位置显示;窗体的大小由Windows决定。
• poScreenCenter:窗体以设计期间的大小显示;窗体显示的位置总在屏幕的中间。考虑多个监示器时位置的调整。 
• poDesktopCenter:窗体以设计期间的大小显示;窗体显示的位置总在屏幕的中间。不考虑多个监示器时的调整。

13. WindowState:窗体显示状态。用来描述窗体显示的状态。可以取下面的三个数值之一:
• wsNormal:窗体以普通状态显示(既不是最大化状态,也不是最小化状态)。 
• wsMinimized:窗体以最小化状态显示。
• wsMaximized:窗体以最大化状态显示。
程序员可以在对象监视器和代码中修改属性WindowState。在代码中修改的格式为:WindowState = da; // da表示上述的数值之一。

C++ Builder组件属性详解相关推荐

  1. storybook组件属性详解:组件props到strorybook Args

    首先我们查看官方文档:ArgsTable 官方的例子么有看到v-model如何处理,数组.对象等复杂属性定义. 这里一个是props的定义,一个是Controls 先看一下官方文档,Controls ...

  2. ueditor上传组件显示乱码_最全面的移动端 UI组件设计详解:中篇

    上一期给大家讲解了<最全面的移动端UI组件设计详解:上篇>,主要分享了:布局组件和导航组件2个部分:这次给大家带来:基础组件.表单组件和反馈组件详解,希望你在设计APP.小程序.H5页面中 ...

  3. delphi TWebBrowser组件使用详解

    delphi TWebBrowser组件使用详解 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等 ...

  4. fileinput 时间_JavaScript_Bootstrap Fileinput文件上传组件用法详解,最近时间空余,总结了一些关...

    最近时间空余,总结了一些关于bootstrap fileinput组件的一些常见用法,特此分享到phpstudy平台,供大家参考,同时也方便以后的查找.本文写的不好还请见谅. 一.效果展示 1.原始的 ...

  5. php动态写入vue,Vue自定义动态组件使用详解

    这次给大家带来Vue自定义动态组件使用详解,Vue自定义动态组件的注意事项有哪些,下面就是实战案例,一起来看一下. 现在基于vue的UI组件库有很多,比如iview,element-ui等.但有时候这 ...

  6. php小程序onload,微信小程序 loading 组件实例详解

    这篇文章主要介绍了微信小程序 loading 组件实例详解的相关资料,需要的朋友可以参考下 loading通常使用在请求网络数据时的一种方式,通过hidden属性设置显示与否 主要属性: wxml 显 ...

  7. Vue组件-Confirm详解

    Vue组件-Confirm详解 原作者:爱扎马尾的小狮子 一.使用的地方引用,传入属性和方法 在需要的地方引入组件,然后传入对应的属性和方法 组件 <template> <div : ...

  8. React Native按钮详解|Touchable系列组件使用详解

    转载自:http://www.devio.org/2017/01/10/React-Native按钮详解-Touchable系列组件使用详解/ 在做App开发过程中离不了的需要用户交互,说到交互,我们 ...

  9. lhgdialog弹出框组件 参数详解(自己曾经开发的fuzz项目中用到过)

    lhgdialog弹出框组件 参数详解 鸣谢:http://blog.csdn.net/hurryjiang/article/details/7657623 同文:http://wjch-111.it ...

最新文章

  1. bool函数_有趣的函数绝无仅有
  2. 未来之路—写在大二结束之前
  3. CORE协议的MATLAB仿真
  4. Linux-locate/slocate命令
  5. Turn off UAC, Windows Firewall, Set time zone
  6. cocos2dx集成友盟社会化分享图片崩溃问题
  7. pypark hive 开启动态分区_Hive分区与分桶
  8. redis 怎么关闭写盘_Redis持久化策略
  9. AI应用开发基础傻瓜书系列3-激活函数
  10. Hive的安装和使用以及Java操作hive
  11. 看完这篇Redis缓存三大问题,够你和面试官battle几回合了
  12. python笔记23-unittest单元测试之mock
  13. Mac 升级 catalina 后无法创建文件,Read-only file system
  14. html中元素的几种居中方法
  15. h5画三角形_如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)...
  16. 分词器——ik——分词算法
  17. 票据背书以及票据背书的好处
  18. mysql 转义字符 escape_mysql 的Escape转义字符串
  19. centos使用yum安装xtrabackup
  20. Unity基础(二)---立体声道

热门文章

  1. python - - 函数 - - 内置函数和匿名函数
  2. java使用POI操作excel
  3. python turtle 乌龟赛跑_Python编程 | 海龟绘图:Turtle Race 海龟赛跑游戏
  4. Graph Neural Networks with Convolutional ARMA Filters
  5. scrapy实践二(selenium爬取腾讯漫画【失败】)
  6. 【毕业设计】49-基于单片机的双电梯控制控制系统设计(原理图工程+仿真工程+源代码工程+答辩论文)
  7. Linux获取以毫秒为单位的当前时间
  8. 启动nginx报错问题(nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socke
  9. 项目经理通过甘特图编制项目计划的方法
  10. mysql怎么改gm_OD端//使用SQLyou数据库管理工具——-一次性 图文告诉你怎么改GM权限/角色属性/调经验金钱及掉宝等 | 学步园...