我在panel上动态产生到了几个speedbutton按钮,当我点击speedbutton按钮时,它会产生什么事件啊,比如我要知道我所要点击的哪个speedbutton的caption值,它会产生什么事件?在线等!
解决方案 »
- DELPHI 图片显示闪屏问题。
- 很简单的问题,但是不知道怎么解决
- 我装了DevExpress套件中Ex editors 后在编辑的时候显示中文正常,在运行的时候就显示乱码,所有的caption都一样。
- Delphi7 如何設置時間格式!
- 500分!!急——怎么样把全屏的游戏窗体设置成为自己程序的父窗体
- 菜鸟问题
- 那里有关于delphi类包介绍的资料?
- Monks, 進來拿分吧﹗
- 我想写:select * from talbe where name like '杨%',写到adoquery1.SQL.Text后面怎么写阿?那些''''搞得我昏了,哪个好人来讲讲?
- DELPHI 调用过程ADOStoredProc1的问题??
- circular datalink are not allowed 如何解决
- 紧急求救!!!!在线等!
Public
Procedure OnBtnClick(Sender: TObject);procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
btn: array[1..4] of TButton;
begin
for i:=1 to 4 do
begin
btn[i]:= TButton.Create(Self);
btn[i].Parent:= Form1;
btn[i].Name:='btn'+IntToStr(i);
btn[i].Height:= 25;
btn[i].Width:= 75;
btn[i].Top:= 10+25*(i-1);
btn[i].Left:= 10;
btn[i].Visible:= True;
btn[i].OnClick:= OnBtnClick;
end;
end;procedure TForm1.OnBtnClick(Sender: TObject);
begin
if (Sender as TButton).Name='btn1' Then
ShowMessage('btn1 Click');
if (Sender as TButton).Name='btn2' Then
ShowMessage('btn2 Click');
if (Sender as TButton).Name='btn3' Then
ShowMessage('btn3 Click');
if (Sender as TButton).Name='btn4' Then
ShowMessage('btn4 Click');
end;
------知识点:Sender的用法
在OnBtnClick中加入
ShowMessage((Sender as TButton).caption)
type
TForm1 = class(TForm)
Panel1: TPanel;
Button1: TButton;
SpeedButton1: TSpeedButton;
procedure Button1Click(Sender: TObject);
private
procedure SpeedButtonClick(Sender: TObject);
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for i := 0 to 9 do
begin
with TSpeedButton.Create(nil) do
begin
Parent := Panel1;
Width := 100;
Height := 20;
Left := 100*(I mod 5);
Top := 20*(I div 5);
Caption := '第'+IntToStr(I)+'个';
OnClick := SpeedButtonClick;
end;
end;
end;procedure TForm1.SpeedButtonClick(Sender: TObject);
begin
if Sender is TSpeedButton then
ShowMessage((Sender as TSpeedButton).Caption);
end;