A B Form Sender 的問題 |
答題得分者是:Miles
|
Sanyuan
一般會員 發表:24 回覆:32 積分:11 註冊:2002-06-23 發送簡訊給我 |
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
|
Sanyuan
一般會員 發表:24 回覆:32 積分:11 註冊:2002-06-23 發送簡訊給我 |
試了一下,好像不行
可能是我表達的不是很明確
再換個簡單的方式 form1 新增一個Button1
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.CreateForm(TForm2, Form2);
form2.show;
end;
--------------------------------------------
form2 在create的時候,判斷sender
procedure TForm2.FormCreate(Sender: TObject);
begin
showmessage(TButton(Sender).name);
end; --------------------------------------------
TButton(Sender).name 不是'button1' 而是 'form2' Why?
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
Hi Sanyuan 您好:
這樣不行, Sender為Form2沒錯 procedure TForm2.FormCreate(Sender: TObject); begin showmessage(TButton(Sender).name); end;不曉得您是否必須要在OnCreate作, 因為在OnCreate參數還未傳進去所以必須在別的地方作, 試著在OnActivate or OnShow裡作 procedure TForm1.Button1Click(Sender: TObject); begin Application.CreateForm(TForm2, Form2); Form2.Label1.Caption := TButton(Sender).Name; <--傳入Form1.Button1用元件或Public變數去接 form2.show; end;我不是高手, 高手是正在銀幕前微笑的人.
------
我不是高手, 高手是正在銀幕前微笑的人. |
Sanyuan
一般會員 發表:24 回覆:32 積分:11 註冊:2002-06-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |