使用 IntraWeb (11) - 基本控件之 TIWButton

 

所在单元及继承链:
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 DoRefreshControl: Boolean //它默认是 False, 但在修改某些属性时必须让它为 True 才会有效 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; 

 

posted on 2018-09-11 14:03  martian6125  阅读(184)  评论(0编辑  收藏  举报