紀錄影像座標 |
答題得分者是:s9515603
|
jenglin
一般會員 發表:45 回覆:32 積分:15 註冊:2006-10-08 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
jenglin
一般會員 發表:45 回覆:32 積分:15 註冊:2006-10-08 發送簡訊給我 |
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y) { TColor a = Image1->Canvas->Pixels[X][Y]; Label1->Caption = X; Label2->Caption = Y; } 我已經改成MouseDown了,滑鼠點一下會紀錄該點座標,但是點其他點時就會覆寫掉,想請問要怎麼才能分開紀錄? ===================引 用 taishyang 文 章=================== 請PO上您測試的程式碼讓前輩們幫您看看^_^
編輯記錄
jenglin 重新編輯於 2007-12-04 20:26:17, 註解 無‧
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
jenglin
一般會員 發表:45 回覆:32 積分:15 註冊:2006-10-08 發送簡訊給我 |
void __fastcall TForm1::Image1MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y) { TColor a = Image1->Canvas->Pixels[X][Y]; Edit1->Text = X; Edit2->Text = Y; } 抱歉,應該是這樣!請問怎麼才能連續點幾個點都把座標記錄下來? ===================引 用 taishyang 文 章=================== 您不是要放在TEdit嗎? 怎麼又放到TLabel呢? |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
jenglin
一般會員 發表:45 回覆:32 積分:15 註冊:2006-10-08 發送簡訊給我 |
|
s9515603
一般會員 發表:2 回覆:1 積分:5 註冊:2007-12-18 發送簡訊給我 |
你可以試試我的想法
[code cpp] int *mouse_point=new int[2*100]; //全域,記錄座標的地方,只能記錄100筆,自行增加。 int mouse_count=0; //全域,目前記錄的筆數。。 main by mouse event { mouse_point[2*mouse_count 0]=X; // 記錄 X mouse_point[2*mouse_count 1]=Y; // 記錄 Y mouse_count ; } out { int outs=StrToInt(Edit1->Text); // 輸出第 ? 筆 ,用edit控制 RichEdit1->Lines->Add("X:" (String)mouse_point[2*outs 0] " 、Y:" (String)mouse_point[2*outs 1]); // 輸出 } [/code] 記得程式結束時在加個 delete mouse_point; 這樣既不用輸出,又可以隨時呼叫。 我沒實際在程式中run,但要是我,我會寫成這樣,你試試,如有bug,我在上來除吧。 其它的功能自行延申吧!
------
我最愛寫程式 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |