【BCB】如何將Form1上的不同元件,都賦予Form1的OnMouseMove事件? |
答題得分者是:RaynorPao
|
Cooky Kid
初階會員 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
請教各位大大:
如何將Form1上的不同元件,用迴圈(for/while)都賦予Form1的OnMouseMove事件?< >
>< >
老實耕田的原始碼如下:
< class="code">
StaticText1->OnMouseMove = FormMouseMove;
ToolBar1->OnMouseMove = FormMouseMove;
Button1->OnMouseMove = FormMouseMove;
Button2->OnMouseMove = FormMouseMove;
迴圈代勞的更改碼如下↓
for(int i=0; i<Form1->ComponentCount; i ) { //該如何做? } |
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 請教各位大大: 如何將Form1上的不同元件,用迴圈(for/while)都賦予Form1的OnMouseMove事件?< > >< > 老實耕田的原始碼如下: < class="code"> StaticText1->OnMouseMove = FormMouseMove; ToolBar1->OnMouseMove = FormMouseMove; Button1->OnMouseMove = FormMouseMove; Button2->OnMouseMove = FormMouseMove; 迴圈代勞的更改碼如下↓Cooky Kid 你好: 請參考以下的做法 < class="code"> long lI=0; //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { Application->AppMessage; } //--------------------------------------------------------------------------- void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled) { if(Msg.message==WM_MOUSEMOVE) { Memo1->Lines->Add("Mouse Move - " IntToStr(lI )); } } 備註: 要先在 Unit1.h 中宣告for(int i=0; i<Form1->ComponentCount; i ) { //該如何做? }
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
Cooky Kid
初階會員 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
RaynorPao 大大,
多謝..多謝......
攔截 >
因為前天網上看到了『移動滑鼠,取得 >
改過的碼如下:
< class="code">
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//設定Form1型態
FormStyle = fsNormal;
//
Application->AppMessage;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
//動態創造5個彩色背景的視窗,以供測試
for(int i=0;i<5;i )
{
TForm * TForm(Form1);
form->Parent = Form1;
form->FormStyle = fsNormal;
form->Name = "form" AnsiString(i 1);
form->Width = 150; form->Height = 40;
form->Top = ToolBar1->Height 40*i;
form->Left = 40*i;
form->Color = (TColor)RGB(255-i*50,i*50,255);
form->Show();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
char name[6];
//刪除程式開始時創造的5個彩色視窗
for(int num=0;num
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: RaynorPao 大大, 多謝..多謝...... 攔截 > 因為前天網上看到了『移動滑鼠,取得 > >>< face="Verdana, Arial, Helvetica"> Cooky Kid 你好: 不客氣< >~~另外~~也很感謝你的熱心分享喔< > -- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |