VCL组件之TPanel
TPanel位于Standard组件面板上,也是常用的一种容器控件。面板的一个优点就是放在面板上的组件称为面板的一部分,因此它们与面板一起移动。这在设计阶段很有用。
Panel组件的大部分功能在于其Align属性。例如,想显示标题在窗体上端,更进一步假设想让它在中央,不管用户怎样设置窗口尺寸,只需设置Align属性为alTop及Alignment属性为taCenter,这样标题总是在中央的,就是这么简单。
面板有很多种类的外观,它的外观通过BevelInner、BevelOuter、BorderStyle和BorderWidth属性来改变。
TPanel控件的主要属性
| 属性 | 含义 |
| Alignment | 标题的位置,有taLeftJustify(靠左)、taCenter(居中)和taRightJustify(靠右) |
| BevelInner | 定义Panel内斜面的样式,有bvNone(无斜面)、bvLowered(凹陷)、bvRaised(凸起)、bvSpace(凸起,和bvRaised一样)四种选择 |
| BevelOuter | 定义Panel外斜面的样式,和BevelInner的选项一样 |
| BevelWidth | 定义内外斜面的宽度 |
| BorderStyle | 定义边框的样式,有bsNone(无边框,默认值)、bsSingle(细边框)两种 |
| BorderWidth | 指定边框的宽度,可以取为任意整数值 |
| FullRepaint | 指定了当Panel调整大小时,对自身的重绘方式,为True时,整个Panel包括斜面边框,都被重绘,否则只有斜面边框内的部分被重绘 |
| Locked | 当Panel作为OLE应用程序的工具栏时,使用该属性来指定Panel是否被OLE server的工具栏取代,为True时,则不取代。 |
Panel组件如此多样,需要花费一些时间来发现所有可能的应用。
下图,显示了不同类型的面板样式示例

以上代码均在Delphi7中测试通过,示例代码下载:不同样式的面板.rar
VCL组件之TPanel的更多相关文章
- delphi VCL组件同名继承
当我们在扩展一个 vcl 组件功能的时候,既想保留IDE中能拖动大小与直接设置属性的功能,又想减少写创建与释放代码和安装扩展后新组件的麻烦,那么本文中的方法,就非常实用了. 以给TStringGrid ...
- Delphi的VCL组件库
Visual Component Library的缩写(可视组件库)VCL是Visual Component Library的缩写,即可视组件库,它是Delphi,C++Builder等编程语言的基本 ...
- VCL组件之TLabel、TStaticText和TLabeledEdit
TLabel.TStaticText.TLabeledEdit类的继承关系如下:
- CSDN论坛 > Delphi > VCL组件开发及应用 DBLookupComboBox用法
(1)DataSource属性 该属性用于连接要编辑数据的主表数据源(2)DataField属性 该属性用于指定要编辑的数据字段名(3)ListSource属性 . 该属性用于 ...
- Delphi:与VCL同步(Synchronize()、用消息来同步)
看本文时,可以同时参考:Delphi中线程类 TThread实现多线程编程(事件.临界区.Synchronize.WaitFor……) 先说一下RTL和VCL RTL(Run-Time library ...
- 【温故Delphi】之VCL消息机制小结
TObject消息分派 procedure Dispatch(var Message); virtual; #负责分派消息到特定VCL组件的事件处理函数 procedure DefaultHandle ...
- Delphi 第三方组件
TMS Component Pack v7.0.0.0 TMS Component Pack 版本为Delphi和C++ Builder提供了超过350个VCL组件,用以创建功能丰富的.现代的和原生W ...
- Delphi组件indy 10中IdTCPServer修正及SSL使用心得
indy 10终于随着Delphi2005发布了,不过indy套件在我的印象中总是复杂并且BUG不断,说实话,不是看在他一整套组件的面子上,我还是喜欢VCL原生的Socket组件,简洁,清晰.Indy ...
- VCL线程的同步方法 Synchronize(用消息来同步)
看本文时,可以同时参考:Delphi中线程类 TThread实现多线程编程(事件.临界区.Synchronize.WaitFor……) 先说一下RTL和VCL RTL(Run-Time library ...
随机推荐
- m_strcpy
自己实现strcpy函数 #include <stdio.h> #include <assert.h> //如果它的条件返回错误,则终止程序执行 char *m_strcpy( ...
- vue2 父链,子组件索引及父子通信的props对象写法
- Spring MVC框架及标签库
1.Spring MVC技术 1. 当DispatcherServlet接到请求时,他先回查找适当的处理程序来处理请求.DispatcherServlet通过一个或者多个处理程序映射,将每个请求映射到 ...
- 将 Django 应用程序部署到生产服务器
原文出自: http://www.ibm.com/developerworks/cn/opensource/os-django/ 比较有启发性质的一篇文章,会避免很多弯路 Django 是一个基于 P ...
- win32按钮
1.按钮是什么 在win32窗口中,经常可以看到按钮,点击按钮可以触发各种事件: 创建按钮的函数: void CreateButton(HWND hwnd) //参数为父窗口句柄,按钮必须属于一个 ...
- 历年NOIP回顾
2017.8.18 上午 NOIP2016 day1 T1 95 T2 40 T3 88 我感受到了绝望... T1当时没挂现在挂了. T2打了80的暴力,结果前面两个梯度的暴力全挂,后面两个却过了 ...
- python pillow 绘制图片
demo1 #coding=utf- from PIL import Image img = Image.,))###创建一个5*5的图片 pixTuple = (,,,)###三个参数依次为R,G, ...
- Hadoop mapreduce过程分析
原理图: 中间结果的排序与溢出(spill)流程图 map分析: (1).输入分片(input split):在进行mapreduce之前,mapreduce首先会对输入文件进行输入分片(input ...
- Java生成不重复的随机数组的方法
一.JAVA中生成随机数的方式 1.在j2se中使用Math.random()令系统随机选取一个01之间的double类型小数,将其乘以一个数,比如25,就能得到一个025范围内的随机数,这个在j2m ...
- buoyantSimpleFoam求解器:恒热流壁面【翻译】
翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/148183-buoyantsimplefoam-fixed ...