主页C++ Builder 资料C++ Builder 参考手册System 控件TPaintBox
C++ Builder 串口控件
C++ Builder 编程技巧
C++ Builder 操作指南
C++ Builder 参考手册
基础知识
cfloat 浮点数
cmath 数学函数
cstdlib 标准库函数
System 字符串
System 日期和时间
System.Math.hpp 数学函数
其他数据类型
VCL 基础类
VCL 应用程序
Pictures 图片
Graphics 绘图
Additional 控件
System 控件
 • TPaintBox
   · 属性
   · 方法
   · 事件
A ~ Z 字母顺序排列的目录
网友留言/技术支持
TPaintBox - 一块空白的画布,在这个控件的 OnPaint 事件里面用控件的 Canvas 画布属性画图

属性方法事件返回 TPaintBox 类

事件   描述
__published:    
OnClick TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
改变 TControlOnClick 事件的访问权限。
控件的点击事件,控件用鼠标点击,或者键盘的空格或回车键,还有快捷键等,都可能会产生这个事件,请参考 Click 方法。
OnContextPopup TContextPopupEvent typedef void __fastcall (__closure *TContextPopupEvent)(System::TObject* Sender, const System::Types::TPoint &MousePos, bool &Handled);
改变 TControlOnContextPopup 事件的访问权限。
当控件的弹出菜单弹出的时候,产生 OnContextPopup 事件。
如果用鼠标右键点击弹出这个菜单,参数 MousePos 是鼠标点击的位置的坐标,如果是通过按键盘按键弹出的菜单,MousePos 的坐标为 (-1, -1)。如果在这个函数里面处理了这个事件,不希望调用默认的处理,Handled 参数需要返回 true,如果返回 false,这个函数结束时会调用默认的处理。请参考 DoContextPopup 方法。
OnDblClick TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
改变 TControlOnDblClick 事件的访问权限。
双击鼠标会产生这个事件,请参考 DblClick 方法。
OnDragDrop TDragDropEvent typedef void __fastcall (__closure *TDragDropEvent)(System::TObject* Sender, System::TObject* Source, int X, int Y);
改变 TControlOnDragDrop 事件的访问权限。
把其他控件拖放到这个控件里面的时候产生这个事件。
参数 Source 是正在被拖动的控件,参数 X 和 Y 是控件放在这个坐标了 (鼠标位置),请参考 DragDrop 方法
OnDragOver TDragOverEvent typedef void __fastcall (__closure *TDragOverEvent)(System::TObject* Sender, System::TObject* Source, int X, int Y, System::Uitypes::TDragState State, bool &Accept);
改变 TControlOnDragOver 事件的访问权限。
在拖拽的时候会产生这个事件,请参考 TDragState 类型和 DragOver 方法。
参数 Source 是被拖拽的控件,State 是拖拽的状态,X 和 Y 是拖拽时鼠标的位置,如果可以接受把 Source 放在这里,需要把 Accept 参数设为 true,如果不接受把 Source 放在这里,需要把 Accept 参数设为 false。
OnEndDock TEndDragEvent typedef void __fastcall (__closure *TEndDragEvent)(System::TObject* Sender, System::TObject* Target, int X, int Y);
改变 TControlOnEndDock 事件的访问权限。
当控件结束停靠的时候,会产生 OnEndDock 事件,请参考 DoEndDock 方法。
参数 Target 为停靠的目标,X 和 Y 为停靠位置的屏幕坐标。
OnEndDrag TEndDragEvent typedef void __fastcall (__closure *TEndDragEvent)(System::TObject* Sender, System::TObject* Target, int X, int Y);
改变 TControlOnEndDrag 事件的访问权限。
当拖拽结束的时候会产生 OnEndDrag 事件,请参考 DoEndDrag 方法。
参数 Target 为拖拽的目标,X 和 Y 为停靠位置的屏幕坐标。
OnGesture TGestureEvent typedef void __fastcall (__closure *TGestureEvent)(System::TObject* Sender, const TGestureEventInfo &EventInfo, bool &Handled);
改变 TControlOnGesture 事件的访问权限。
触摸屏手势事件。使用 Touch 属性的 TTouchManager 管理手势。
如果处理了手势,把 Handled 参数设为 true 阻止继续执行默认处理。
如果控件没有关联 OnGesture 事件,或者这个事件没有做处理 (Handled 参数为 false),会调用 DoGesture 方法进行处理。
OnMouseActivate TMouseActivateEvent typedef void __fastcall (__closure *TMouseActivateEvent)(System::TObject* Sender, System::Uitypes::TMouseButton Button, System::Classes::TShiftState Shift, int X, int Y, int HitTest, System::Uitypes::TMouseActivate &MouseActivate);
改变 TControlOnMouseActivate 事件的访问权限。
鼠标点击激活窗口会产生这个事件,请参考 TMouseActivate 类型和 MouseActivate 方法。
参数:Button 点击了鼠标的按钮;Shift:当点击鼠标按钮的时候,组合键的状态;X 和 Y:点击鼠标时的鼠标位置;HitTest:鼠标点击的位置,从 WM_NCHITTEST 消息获取的值。
返回值:MouseActivate 参数返回如何处理鼠标点击 (激活窗口)
OnMouseDown TMouseEvent typedef void __fastcall (__closure *TMouseEvent)(System::TObject* Sender, System::Uitypes::TMouseButton Button, System::Classes::TShiftState Shift, int X, int Y);
改变 TControlOnMouseDown 事件的访问权限。
当鼠标按钮点击了控件会产生这个事件。这个事件响应 Windows 消息:WM_LBUTTONDOWN, WM_MBUTTONDOWN, WM_RBUTTONDOWN。请参考 MouseDown 方法。
参数 Button 为点击的鼠标按钮,Shift 为组合键的状态,X 和 Y 为鼠标位置。
OnMouseEnter TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
改变 TControlOnMouseEnter 事件的访问权限。
鼠标移动到控件里面产生的事件。
OnMouseLeave TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
改变 TControlOnMouseLeave 事件的访问权限。
鼠标移动到控件外面产生的事件。
OnMouseMove TMouseMoveEvent typedef void __fastcall (__closure *TMouseMoveEvent)(System::TObject* Sender, System::Classes::TShiftState Shift, int X, int Y);
改变 TControlOnMouseMove 事件的访问权限。
当鼠标在控件里面移动的时候会产生 OnMouseMove 事件,这个事件响应 Windows 消息:WM_MOUSEMOVE。请参考 MouseMove 方法。参数 X 和 Y 为鼠标的位置。
OnMouseUp TMouseEvent typedef void __fastcall (__closure *TMouseEvent)(System::TObject* Sender, System::Uitypes::TMouseButton Button, System::Classes::TShiftState Shift, int X, int Y);
改变 TControlOnMouseUp 事件的访问权限。
鼠标按键抬起的时候产生这个事件。这个事件响应 Windows 消息:WM_LBUTTONUP, WM_MBUTTONUP, WM_RBUTTONUP。请参考 MouseUp 方法。
参数 Button 为动作的按钮,Shift 为组合键的状态,X 和 Y 为鼠标的位置。
OnPaint TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
当需要刷新显示的时候会产生这个事件,在这个事件里面使用 Canvas 属性的画布绘图。
TPaintBox 的 Paint 方法里面没有做任何事情,如果 OnPaint 事件里面也没有进行绘图,TPaintBox 是看不见的,即可以说是完全透明的。
OnStartDock TStartDockEvent typedef void __fastcall (__closure *TStartDockEvent)(System::TObject* Sender, TDragDockObject* &DragObject);
改变 TControlOnStartDock 事件的访问权限。
当控件开始停靠的时候产生这个事件,请参考 DoStartDock 方法。
在这个事件里面,可以创建一个 TDragDockObjectEx 对象给 DragObject 参数,这是拖拽时的显示框外观。如果创建的是 TDragDockObjectEx 对象,当拖拽操作结束之后,不需要销毁这个对象,如果创建的是 TDragDockObject 对象,在拖拽操作结束之后,必须进行销毁。如果给 DragObject 的是一个 NULL 值,控件会自动创建 TDragDockObject 对象。
OnStartDrag TStartDragEvent typedef void __fastcall (__closure *TStartDragEvent)(System::TObject* Sender, TDragObject* &DragObject);
改变 TControlOnStartDrag 事件的访问权限。
当拖拽开始的时候产生这个事件,请参考 DoStartDrag 方法。
在这个事件里面,可以创建一个 TDragControlObjectEx 对象给 DragObject 参数,这是拖拽时的显示框外观。如果创建的是一个 TDragControlObjectEx 对象,在拖拽操作结束之后,不需要销毁,如果创建的是 TDragControlObject 对象,在拖拽操作结束之后,必须进行销毁。如果给 DragObject 一个 NULL 值,控件会自动创建 TDragControlObject 对象。
protected:    
TControl::   TControl 继承过来的
OnCanResize TCanResizeEvent typedef void __fastcall (__closure *TCanResizeEvent)(System::TObject* Sender, int &NewWidth, int &NewHeight, bool &Resize);
在改变大小之前产生的事件。请参考 CanResize 方法。
参数 NewWidth 和 NewHeight 是控件即将改变为这个新的宽度和高度,CanResize 为是否允许改变大小。如果认为新的宽度和高度合理,CanResize 参数返回 true,如果认为新的宽度和高度不合理,可以修改为合理的值,CanResize 参数返回 true 允许改变大小,如果拒绝改变大小,参数 CanResize 返回 false。
OnConstrainedResize TConstrainedResizeEvent typedef void __fastcall (__closure *TConstrainedResizeEvent)(System::TObject* Sender, int &MinWidth, int &MinHeight, int &MaxWidth, int &MaxHeight);
如果 Constraints 属性包含不等于 0 的值,当控件改变大小的时候会产生 OnConstrainedResize 事件。请参考 ConstrainedResize 方法。
OnMouseWheel TMouseWheelEvent typedef void __fastcall (__closure *TMouseWheelEvent)(System::TObject* Sender, System::Classes::TShiftState Shift, int WheelDelta, const System::Types::TPoint &MousePos, bool &Handled);
鼠标滚轮事件,当拨动鼠标滚轮的时候,会产生这个事件。如果 OnMouseWheel 事件处理了滚轮事件,Handled 参数会返回 true,否则会根据滚轮拨动的方向,产生 OnMouseWheelUp 或 OnMouseWheelDown 事件。请参考 DoMouseWheel、 DoMouseWheelDown 和 DoMouseWheelUp 方法。
OnMouseWheelDown TMouseWheelUpDownEvent typedef void __fastcall (__closure *TMouseWheelUpDownEvent)(System::TObject* Sender, System::Classes::TShiftState Shift, const System::Types::TPoint &MousePos, bool &Handled);
鼠标滚轮向下拨动,会触发和执行 OnMouseWheelDown 事件,请参考 DoMouseWheel 方法。
OnMouseWheelUp TMouseWheelUpDownEvent typedef void __fastcall (__closure *TMouseWheelUpDownEvent)(System::TObject* Sender, System::Classes::TShiftState Shift, const System::Types::TPoint &MousePos, bool &Handled);
鼠标滚轮向上拨动,会触发和执行 OnMouseWheelUp 事件,请参考 DoMouseWheel 方法。
OnResize TNotifyEvent typedef void __fastcall (__closure *TNotifyEvent)(System::TObject* Sender);
当控件的大小 (宽度或高度) 发生变化时,会产生这个事件。
TComponent::   TComponent 继承过来的
OnGetDeltaStreams TGetDeltaStreamsEvent typedef void __fastcall (__closure *TGetDeltaStreamsEvent)(System::TObject* Sender, TGetStreamProc Proc, bool &Handled);
这个事件是从 TComponent 继承过来的,控件内部使用的事件。
请参考 TComponentOnGetDeltaStreams 事件。

属性方法事件返回 TPaintBox 类

◤上一页:方法

C++ 爱好者 -- Victor Chen 的个人网站 www.cppfans.com 辽ICP备11016859号