按鈕共用事件的疑惑 |
答題得分者是:andy424345
|
ravi725
一般會員 ![]() ![]() 發表:1 回覆:1 積分:0 註冊:2017-07-13 發送簡訊給我 |
各位先進大家好 小弟是一位剛踏入Delphi的菜鳥..
目前遇到一個問題有點疑惑 有關於按鈕共用事件的寫法差異 Edit1.color與 Tedit(Sender)還有(Sender AS Tedit程式1--------------------------------------------------- begin Edit1.Font.Color :=clWhite; procedure TForm1.Edit1Exit(Sender: TObject); Edit1.Color :=clWhite; end; procedure TForm1.Edit2Enter(Sender: TObject); Edit2.color :=clRed; end; begin Edit2.Font.Color :=clBlack; 程式2----------------------------------------------------- begin Tedit(Sender).Font.Color :=clWhite; procedure TForm1.Edit1Exit(Sender: TObject); Tedit(Sender).Color :=clWhite; end; |
andy424345
一般會員 ![]() ![]() 發表:2 回覆:13 積分:23 註冊:2011-03-29 發送簡訊給我 |
1.
在Form OnCreate時先把兩個Edit事件寫成一樣 Edit1.OnEnter := Edit1Enter; Edit1.OnExit := Edit1Exit; Edit2.OnEnter := Edit1Enter; Edit2.OnExit := Edit1Exit; 或者到Object Inspector把每個Edit的Event改成一樣的事件 2. TEdit(Sender)跟(Sender as TEdit)都是一樣的 共用同樣的事件後以Edit1Enter舉例,當其中一個Edit進入到Edit1Enter後Edit會指到Sender Edit1.Color只是對Edit1做處理,而TEdit(Sender).Color是針對某個Edit觸發這個事件後對它做處理
編輯記錄
andy424345 重新編輯於 2017-07-14 09:49:36, 註解 無‧
|
ravi725
一般會員 ![]() ![]() 發表:1 回覆:1 積分:0 註冊:2017-07-13 發送簡訊給我 |
Sender是否可以理解為某個物件執行參數呢? 例如我要動用到所有的TEdit做一樣的動作 那我只要針對TEdit(Sender)寫方法就好 這樣對嗎?
===================引 用 andy424345 文 章=================== 1. 在Form OnCreate時先把兩個Edit事件寫成一樣 Edit1.OnEnter := Edit1Enter; Edit1.OnExit := Edit1Exit; Edit2.OnEnter := Edit1Enter; Edit2.OnExit := Edit1Exit; 或者到Object Inspector把每個Edit的Event改成一樣的事件 2. TEdit(Sender)跟(Sender as TEdit)都是一樣的 共用同樣的事件後以Edit1Enter舉例,當其中一個Edit進入到Edit1Enter後Edit會指到Sender Edit1.Color只是對Edit1做處理,而TEdit(Sender).Color是針對某個Edit觸發這個事件後對它做處理 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |