所在单元及继承链:
IWCompButton.TIWButton < TIWCustomControl < TIWBaseHTMLControl < TIWBaseControl < TIWVCLBaseControl < TControl < TComponent < TPersistent < TObject
主要成员:
property ButtonType: TIWButtonType //!, 示例中详述 property HotKey: string //热键; 譬如: HotKey = ‘j‘, 那么热键就是: Alt+J property Confirmation: string //指定此信息后, 将弹出问询窗; 只有确认后才会执行 OnClick; 这非常方便, 也很有创意 property DoSubmitValidation: Boolean //是否在提交时验证其他... property ExtraTagParams: TStringList //添加 Html Tag; 不要用于修改 Html Tag property FriendlyName: string //呈现给用户的名称 property ScriptEvents: TIWScriptEvents //客户端的 js 事件脚本 property WebColor: TIWColor //没看出和 Color 的区别 property WebFont: TIWFont //没看出和 Font 的区别 property Css: string //引用在样式表中定义的类; 譬如在样式表定义有 .MyClass1, 这里就可以设置 Css := ‘MyClass1‘; property StyleRenderOptions: TIWStyleRenderOptions //指定哪些类别的样式设置可用于最终的呈现; 因为一些属性可能会和样式表有冲突 property Caption: TCaption //标题 property Text: TCaption //在该控件中, Text 和 Caption 没有区别 property OnClick: TNotifyEvent //与 ScriptEvents 中的 onclick 不同, 这会使整个页面提交, 就像 Submit 按钮一样 property OnAsyncClick: TIWAsyncEvent //异步 Click; 难得见到这么简单的 AJAX 的实现 property OnHTMLTag: TIWOnHTMLTag //事件发生在呈现 Html Tag 时; 可借机修改那些 Tag function RenderHTML(AContext: TIWCompContext): TIWHTMLTag //类似的还有 RenderStyle 等, 这应该是在继承控件时使用的; 现在可以使用 OnHTMLTag function GetSubmitParam: string //? function OwnerForm: TIWBaseForm //所属窗体; 譬如获取 IWButton1.OwnerForm.Name 的结果是 IWForm1
ButtonType 属性:
//在 Html 中的按钮有三种 Type: button、 submit、 reset, 分别表示: 一般按钮、提交按钮、重置按钮 //该属性的本意就是这个, 但现在它不起作用 //它默认是 button, 是否是指定为 submit 也不重要, TIWButton.OnClick 会自动提交; 但 reset 还是有用的 //在作者没有修正前, 可以先通过它的 OnHTMLTag 事件设置: procedure TIWForm1.IWButton1HTMLTag(ASender: TObject; ATag: TIWHTMLTag); //可能需手动 uses IWHTMLTag begin ATag.Params.Values[‘type‘] := ‘reset‘; end; {能接受重置的其他输入控件必须和重置按钮在同一 Region 内, 或都不在 Region 内}
DoSubmitValidation、FriendlyName 属性:
//在空窗体上放 IWEdit1、IWButton1, 写代码如下: procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin IWEdit1.Required := True; //指定为必填字段 IWEdit1.FriendlyName := ‘姓名字段‘; //在验证提示时将使用这个名称 // IWButton1.DoSubmitValidation := False; //TIWButton.DoSubmitValidation 默认是 True; 如果指定为 False, 就不会执行验证了 end; procedure TIWForm1.IWButton1Click(Sender: TObject); begin //只是测试提交, 这里不需要有代码 end; //测试: 运行后, 清空 IWEdit1, 点击按钮, 将会弹出验证提示.
ExtraTagParams 属性:
procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin IWButton1.ExtraTagParams.Add(‘style = color: red‘); end;
Css 属性:
procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin ExtraHeader.Add(‘<style>‘); ExtraHeader.Add(‘.MyClass1 {color: blue;}‘); ExtraHeader.Add(‘</style>‘); IWButton1.Css := ‘MyClass1‘; end;