當妳呼用一個原件的方法時, 他都會出現
function(TObject *Sender)
表示我要呼叫這個副程式要傳入 TObject 這個東東,
可是這個東東到底是什麼? 我到現在都搞不懂...
例如說我不想用滑鼠點選 Events 那個框框讓 BCB 自己產生一個副程式,
而想自己 keyin 一個副程式, 寫成跟她一樣是
FunA(TObject *Sender);
那我要呼叫 FunA() 的話, Sender 要傳入什麼型態的數值才能呼叫這個副程式阿?
--
Origin: 成大資工BBS站 (vlsi1.csie.ncku.edu.tw) From: p18177.ts.ncku.edu.tw
> -------------------------------------------------------------------------- <
發信人: wangs.bbs@vlsi1.iie.ncku.edu.tw (( NCKU*4+NCU*2 )/6), 看板: Programming
標 題: Re: [BCB] function(TObject *Sender)
發信站: 成大資訊所_BBS (Sun Dec 13 21:54:47 1998)
轉信站: Ptt!news.ntu!ctu-gate!news.nctu!netnews.csie.nctu!netnews2.csie.nctu!n
==> Email@bar (失去上網的技能了) 在 programming 版提到:
: 當妳呼用一個原件的方法時, 他都會出現
: function(TObject *Sender)
: 表示我要呼叫這個副程式要傳入 TObject 這個東東,
: 可是這個東東到底是什麼? 我到現在都搞不懂...
: 例如說我不想用滑鼠點選 Events 那個框框讓 BCB 自己產生一個副程式,
: 而想自己 keyin 一個副程式, 寫成跟她一樣是
: FunA(TObject *Sender);
: 那我要呼叫 FunA() 的話, Sender 要傳入什麼型態的數值才能呼叫這個副程式阿?
不懂你要做啥耶?
若單從語法而言, 你可以傳入任何 VCL class 的 object之指標
然後它就會轉型成 TObject型態的指標 Sender
但是如果你是要自己攔訊息來處理的話
不是這樣寫的
應該複載 WndProc 方法
或者是用 BEGIN_MESSAGE_MAP....等巨集
--
To Be is To Do. ~盧梭~
To Do is To Be. ~沙特~
Do Be Do Be Do. ~法蘭克辛納屈~
--
Origin: 成大資工BBS站 (vlsi1.csie.ncku.edu.tw) From: LL12PL3-118.D21-232.ncu.edu.tw
> -------------------------------------------------------------------------- <
發信人: talston.bbs@bbs.pu.edu.tw (水工鳥), 看板: Programming
標 題: Re: [BCB] function(TObject *Sender)
發信站: 靜宜BBS站 (Thu Dec 17 12:54:41 1998)
轉信站: Ptt!news.ntu!news.mcu!news.cs.nthu!news.cis.nctu!pubbs
【 在 Email.bbs@vlsi1.iie.ncku.edu.tw (失去上網的技能了) 的大作中提到: 】
: 當妳呼用一個原件的方法時, 他都會出現
: function(TObject *Sender)
: 表示我要呼叫這個副程式要傳入 TObject 這個東東,
: 可是這個東東到底是什麼? 我到現在都搞不懂...
Sender 就是引發這個 function 的東東,
如在一個 form 上有一個 Button1,若我用滑鼠按了一下,
就會引發 Button1Click() 這個 method,
此時的 Sender 就是 Button1。
: 例如說我不想用滑鼠點選 Events 那個框框讓 BCB 自己產生一個副程式,
: 而想自己 keyin 一個副程式, 寫成跟她一樣是
: FunA(TObject *Sender);
: 那我要呼叫 FunA() 的話, Sender 要傳入什麼型態的數值才能呼叫這個副程式阿?
如果你在 FunA() 中沒有用到 Sender 的話,就算是傳 NULL 也沒有問題。
有錯誤的話,還請高手多多指教。
--
※ 來源:‧靜宜大學計算機中心BBS站 bbs.pu.edu.tw‧[FROM: sun16.pu.edu.tw]