Action 相关组件
TAction //<- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TActionList //<- TCustomActionList <- TComponent //其父类 TCustomActionList 包含一个 TContainedAction 类型的动作列表(Actions[]) TActionManager //<- TCustomActionManager <- TCustomActionList <- TComponent) //其父父类 TCustomActionList 包含一个 TContainedAction 类型的动作列表(Actions[]) TCustomizeDlg //<- TComponent //它拥有 ActionManager: TCustomActionManager 属性 TActionToolBar //<- TCustomActionToolBar <- TCustomActionDockBar <- TCustomActionBar <- TToolWindow <<<- TComponent //其父父父类 TCustomActionBar 拥有 ActionManager: TCustomActionManager 属性. TActionMainMenuBar //<- TCustomActionMainMenuBar <- TCustomActionMenuBar <- TCustomActionDockBar <- TCustomActionBar <- TToolWindow <<<- TComponent //其父父父父类 TCustomActionBar 拥有 ActionManager: TCustomActionManager 属性. TMenuItem //<- TComponent //它拥有 Action: TBasicAction 属性 TPopupActionBar //<- TPopupMenu <- TMenu <- TComponent //它内部拥有 FActionManager: TCustomActionManager 成员 { StdActns 单元一些更具体的类: } THintAction //<- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TEditAction //<- TAction <- TCustomAction <- TContainedAction <- TBasicAction TEditCut、TEditCopy、TEditPaste、TEditSelectAll、TEditUndo、TEditDelete、TEditSelectAll、TEditSelectAll TWindowAction //<- TAction <- TCustomAction <- TContainedAction <- TBasicAction TWindowClose、TWindowCascade、TWindowTileHorizontal、TWindowTileVertical、TWindowMinimizeAll、TWindowArrange THelpAction //<- TAction <- TCustomAction <- TContainedAction <- TBasicAction THelpContents、THelpTopicSearch、THelpOnHelp、THelpContextAction TFileAction //<- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction TFileOpenWith、TFileSaveAs、TFilePrintSetup、TFilePageSetup、TFileExit TSearchFind //<- TSearchAction <- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TSearchReplace //<- TSearchAction <- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TSearchFindFirst //<- TSearchFind <- TSearchAction <- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TSearchFindNext //<- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TFontEdit //<- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TColorSelect //<- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TPrintDlg //<- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent TBrowseForFolder //<- TCommonDialogAction <- TCustomAction <- TContainedAction <- TBasicAction <- TComponent { 另有 ExtActns 单元下的: } TFileRun、TRichEditAction、TRichEditBold、TRichEditItalic、TRichEditUnderline、TRichEditStrikeOut、TRichEditStrikeOut、 TRichEditBullets、TRichEditAlignLeft、TRichEditAlignRight、TRichEditAlignCenter、TTabAction、TPreviousTab、TNextTab、 TOpenPicture、TSavePicture、TURLAction、TBrowseURL、TDownLoadURL、TSendMail { DBActns 单元下的: } TDataSetAction、TDataSetFirst、TDataSetPrior、TDataSetNext、TDataSetLast、TDataSetInsert、 TDataSetDelete、TDataSetEdit、TDataSetPost、TDataSetCancel、TDataSetRefresh { ActnRes 单元下的: } TStandardActions //它们一般用在窗体设计时
使用 TBrowseURL 打开网页:
uses ExtActns; procedure TForm1.Button1Click(Sender: TObject); begin with TBrowseURL.Create(nil) do begin URL := 'http://del.cnblogs.com'; Execute; Free; end; end;
关联 TBrowseURL 到 TSpeedButton:
uses ExtActns, Buttons; var bUrl: TBrowseURL; sBtn: TSpeedButton; procedure TForm1.FormCreate(Sender: TObject); begin bUrl := TBrowseURL.Create(Self); bUrl.URL := 'http://del.cnblogs.com'; bUrl.Caption := 'Open URL'; sBtn := TSpeedButton.Create(Self); sBtn.Parent := Self; sBtn.Width := 100; sBtn.Action := bUrl; end;
使用 TDownLoadURL 下载文件:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtActns, ComCtrls; type TForm1 = class(TForm) Button1: TButton; ProgressBar1: TProgressBar; procedure Button1Click(Sender: TObject); private procedure DownProgress(Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode: TURLDownloadStatus; StatusText: String; var Cancel: Boolean); public end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Button1.Enabled := False; with TDownLoadURL.Create(nil) do begin URL := 'http://files.cnblogs.com/del/PMark_1.rar'; Filename := 'c:\temp\PMark_1.rar'; OnDownloadProgress := DownProgress; //下载进度 ExecuteTarget(nil); Free; end; Button1.Enabled := True; end; procedure TForm1.DownProgress(Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode: TURLDownloadStatus; StatusText: String; var Cancel: Boolean); begin ProgressBar1.Max := ProgressMax; ProgressBar1.Position := Progress; Application.ProcessMessages; end; end.