📄 ceevent.pas
字号:
unit CeEvent;
interface
uses
Classes,
StdCtrls,
DsgnIntf;
type
TDdhDummy4Edit = class (TEdit)
end;
// property editor used to change
// the default edit action
TCeShowOnEnter = class (TDefaultEditor)
procedure Edit; override;
end;
procedure Register;
implementation
uses
PefName, Forms, Dialogs, SysUtils, TypInfo;
// TCeShowOnEnter class
procedure TCeShowOnEnter.Edit;
var
EventName: string;
EnterEvent: TNotifyEvent;
ppi: PPropInfo;
begin
EnterEvent := (Component as TEdit).OnEnter;
// if an OnEnter event handler exists
if Assigned (EnterEvent) then
// get the name of the current event handler
EventName := Designer.GetMethodName (TMethod (EnterEvent))
else
begin
// make up a name
EventName := Component.Name + 'Enter';
// access to the property information
ppi := GetPropInfo (
Component.ClassType.ClassInfo,
'OnEnter');
// generate the method and assign it
EnterEvent := TNotifyEvent (
Designer.CreateMethod (
EventName,
GetTypeData (ppi.PropType^)));
// store the new value
(Component as TEdit).OnEnter := EnterEvent;
Designer.Modified;
end;
Designer.ShowMethod (EventName);
end;
procedure Register;
begin
RegisterComponents ('DDHB', [TDdhDummy4Edit]);
RegisterComponentEditor (TDdhDummy4Edit, TCeShowOnEnter);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -