TdxBarButton的FASTSCRIPT封装
TdxBarButton的FASTSCRIPT封装
// cxg 2017-2-13
unit fs_dev;
interface
{$i fs.inc}
uses
fs_iinterpreter, fs_itools, fs_ievents,
fs_iclassesrtti, Variants,
dxBar, cxClasses
;
type
TdxBarButtonRTTI = class(TdxBarButton); // fake component
TfsNotifyEvent = class(TfsCustomEvent)
public
procedure DoEvent(Sender:TObject);
function GetMethod: Pointer; override;
end;
type
TdevFunctions = class(TfsRTTIModule)
private
function CallMethod(Instance: TObject; ClassType: TClass;
const MethodName: String; Caller: TfsMethodHelper): Variant;
function GetProp(Instance: TObject; ClassType: TClass;
const PropName: String): Variant;
procedure SetProp(Instance: TObject; ClassType: TClass;
const PropName: String; Value: Variant);
public
constructor Create(AScript: TfsScript); override;
end;
implementation
procedure TfsNotifyEvent.DoEvent(Sender: TObject);
begin
CallHandler([Sender]);
end;
function TfsNotifyEvent.GetMethod: Pointer;
begin
Result := @TfsNotifyEvent.DoEvent;
end;
constructor TdevFunctions.Create(AScript: TfsScript);
begin
inherited Create(AScript);
with AScript do
begin
with AddClass(TdxBarButton, 'TdxBarButton') do
begin
AddEvent('OnClick', TfsNotifyEvent);
end;
end;
end;
function TdevFunctions.CallMethod(Instance: TObject; ClassType: TClass;
const MethodName: String; Caller: TfsMethodHelper): Variant;
begin
end;
function TdevFunctions.GetProp(Instance: TObject; ClassType: TClass;
const PropName: String): Variant;
begin
end;
procedure TdevFunctions.SetProp(Instance: TObject; ClassType: TClass;
const PropName: String; Value: Variant);
begin
end;
initialization
fsRTTIModules.Add(TdevFunctions);
finalization
fsRTTIModules.Remove(TdevFunctions);
end.
最新文章
- 开源Word读写组件DocX 的深入研究和问题总结
- box-shadow 的一些使用
- iOS 序列化与反序列化
- log4jdbc-remix安装配置
- GridView中的超级链接技巧
- 错误: 找不到或无法加载主类 scala.tools.nsc.MainGenericRunner
- python学习===计算字符串中子串出现的次数。
- 如何使用cloudflare的CDN加速网站隐藏网站IP
- rpm 命令使用 和 lsof -p 1406 使用
- 认识IQueryable和IQueryProvider接口
- Ubuntu 14.04 下搭建SVN服务器 (转载自 http://www.linuxidc.com/Linux/2015-01/111956.htm)-------------我所用到是红色字体
- redis sentinel哨兵的使用
- C#利用反射动态调用DLL并返回结果,和获取程序集的信息
- 「小程序JAVA实战」小程序的视频展示页面初始化(63)
- JAVA练手--集合
- 如何解决ORA-12547错误!
- HTML5纯Web前端也能开发直播,不用开发服务器(使用face2face)
- ntp 校时程序
- Linux下解决 id_rsa 权限不够
- helloworld:一个完整的WCF案例