5,388
社区成员
发帖
与我相关
我的任务
分享
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
ASpeedBtn: TSpeedButton;
procedure ASpeedBtnClick(Sender: TObject);
procedure ASpeedBtnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ASpeedBtnClick(Sender: TObject);
begin
Memo1.Lines.Add('ASpeedBtnClick');
end;
procedure TForm1.ASpeedBtnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Memo1.Lines.Add('ASpeedBtnMouseDown');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if not Assigned(ASpeedBtn) then
begin
ASpeedBtn := TSpeedButton.Create(Self);
ASpeedBtn.Parent := Self;
ASpeedBtn.SetBounds(100, 100, 100, 30);
ASpeedBtn.Caption := '123';
ASpeedBtn.OnMouseDown := ASpeedBtnMouseDown;
//ASpeedBtn.OnMouseLeave := ; //SpeedButton没有这个事件
ASpeedBtn.OnClick := ASpeedBtnClick;
end;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Assigned(ASpeedBtn) then
FreeAndNil(ASpeedBtn);
end;
end.