所在單元及繼承鏈:
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
//在 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 內}
//在空窗體上放 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, 點擊按鈕, 將會彈出驗證提示.
procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin IWButton1.ExtraTagParams.Add('style = color: red'); end;
procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin ExtraHeader.Add('<style>'); ExtraHeader.Add('.MyClass1 {color: blue;}'); ExtraHeader.Add('</style>'); IWButton1.Css := 'MyClass1'; end;