TControlState: 控件状态
请参考 TControl 的 ControlState 属性。
头文件:
#include <Vcl.Controls.hpp> (XE2 之后),#include <Controls.hpp> (XE 之前)
TControlState 成员
TControlState 是集合类型,定义如下:
enum Vcl_Controls__21 : unsigned char
{
csLButtonDown, csClicked, csPalette, csReadingState, csAlignmentNeeded, csFocusing, csCreating, csPaintCopy, csCustomPaint, csDestroyingHandle, csDocking, csDesignerHide, csPanning, csRecreating, csAligning, csGlassPaint, csPrintClient };
typedef System::Set<Vcl_Controls__21, Vcl_Controls__21::csLButtonDown, Vcl_Controls__21::csPrintClient> TControlState;
集合里面可以包含以下状态:
控件状态 |
说明 |
csLButtonDown |
鼠标左键按下,没有抬起的状态 |
csClicked |
和 csLButtonDown 相同,当 ControlStyle 属性包含 csClickEvents 属性的时候 ControlState 会包含 csClicked,表示鼠标按下要产生点击事件 |
csPalette |
系统调色板改变了,但是这个控件,或者它子控件未完成调色板调整工作 |
csReadingState |
控件正在从流里面读取状态 |
csAlignmentNeeded |
这个控件需要根据 Align 或 Anchors 属性重新调整位置和大小 |
csFocusing |
应用程序正在尝试处理消息,让这个控件获得输入焦点,这并不保证这个控件一定就能获得焦点,但是可以防止递归调用 |
csCreating |
这个控件,或者这个控件的 Owner 或子控件正在创建中,创建完成这个状态会被清除。 |
csPaintCopy |
控件正在被复制,控件的一个副本正在更新显示。ControlStyle 属性必须包含 csReplicatable 才会出现 csPaintCopy 状态 |
csCustomPaint |
控件正在处理自定义的显示消息,例如 OnPaint 事件 |
csDestroyingHandle |
这个控件的窗口句柄正在被销毁 |
csDocking |
这个控件正在被停靠在某个控件里 |
csDesignerHide |
帮助文档里面没有相关说明,以下为猜测内容,没有具体测试:
控件在设计期间被隐藏,请参考 ComponentState 属性和 SetDesignVisible 方法,和在设计期间显示和隐藏不可视控件 |
csPanning |
帮助文档里面没有相关说明,以下为猜测内容,没有具体测试:
控件的内容正在被平移。如果控件支持这个功能,ControlStyle 属性必须包含 csPannable,点击 (按下,而不是拨动) 鼠标中间按钮 (滚轮) 之后,会出现平移提示,此时控件的内容会随着鼠标的移动而移动 |
csRecreating |
控件正在被销毁和重新创建,当重新创建完成,这个状态被清除 |
csAligning |
这个控件正在根据 Align 或 Anchors 属性重新调整位置和大小 |
csGlassPaint |
帮助文档里面没有相关说明,以下为猜测内容,没有具体测试:
正在为 Aero Glass 效果绘图 |
csPrintClient |
正在处理 WM_PRINTCLIENT 消息,把客户区的内容画在其他 DC 上 |
|