全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1081
推到 Plurk!
推到 Facebook!

如何利用BUTTON將值填入特定的EDIT裡面呢

尚未結案
barryHsu
一般會員


發表:55
回覆:49
積分:20
註冊:2005-01-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-09 23:57:48 IP:163.18.xxx.xxx 未訂閱
現在有四個BUTTON,每一個BUTTO控制倆各指定好的EDIT,假如我要這樣控制的話,程式可以這樣寫ㄇ  
 
void __fastcall TForm1::Panel2MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { TPoint P; GetCursorPos(&P); P = ScreenToClient(P); Caption = IntToStr(P.x) + " : " + IntToStr(P.y); if(Button1->Enabled==true) { EdtX1->Text=X-320; EdtY1->Text=Y-218; } else if(Button7->Enabled==true) { Edit1->Text=X-320; Edit2->Text=Y-218; } else if(Button8->Enabled==true) { Edit3->Text=X-320; Edit4->Text=Y-218; } else if (Button9->Enabled==true) { Edit5->Text=X-320; Edit6->Text=Y-218; } }
 
發表人 - barryHsu 於 2005/03/09 23:59:57
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-10 08:50:33 IP:61.66.xxx.xxx 未訂閱
是指這樣嗎 按下Button1寫Edit1,Edit2的值 void __fastcall TForm1::Button1Click(TObject *Sender) { int a = 123, b = 456; Edit1->Text = a; Edit2->Text = b; }
barryHsu
一般會員


發表:55
回覆:49
積分:20
註冊:2005-01-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-10 11:06:31 IP:163.18.xxx.xxx 未訂閱
Hello blk5743: 因為我有一張影像,我必須截取這樣影像的座標值,所以我適用MouseDown這各功能,也就是說我按下BUTON,我就可以直接在我的影像終點選得到座標值,圖中有四個BUTTON分別控制參考點一~四,假如這樣的話我可以在MouseDown的事件下寫ㄋ 還是要在BUTTON的事件下面寫ㄋ....
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-10 11:10:24 IP:203.67.xxx.xxx 未訂閱
回 blk5743: Text 是 AnsiString,不能給定 int 吧  應該是 > > --
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
barryHsu
一般會員


發表:55
回覆:49
積分:20
註冊:2005-01-25

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-10 12:02:43 IP:163.18.xxx.xxx 未訂閱
Hello chtai: 因為我現在用影像器擷取到影像,但是我必須要在我取到的影像中得到它的座標值,所以我就用了MouseDown的事件下去寫,可是我現在必須利用Button來控制擷取到的座標值要放入參考點一中的兩EDIT內,所以我想說再MouseDown事件下撰寫,假如說我按下另外一個Button他又會將得到的座標值填入另一個參考點二中的EDIT內,依此類推,所以我做了四個Button下去控制, 在圖中有四個set,分別控制參考點一~四的EDIT,我點選SET可以將得到的座標值並填入到參考點一的EDIT內,假如點另外一個SET他會有將得到的值填入參考點二,依此類推,不知chtai大大了解意思嘛?
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-03-10 12:20:18 IP:203.67.xxx.xxx 未訂閱
喔喔~~~這樣我大概知道你要做什麼了。 所以你是要在影像上頭點四次,然後埴入這四次的座標值囉? 那你試看看這樣如何 ?
 
void __fastcall TForm1::Panel2MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
        TPoint P;
        GetCursorPos(&P);
        P = ScreenToClient(P);
        Caption = IntToStr(P.x)   " : "   IntToStr(P.y);
        if(EdtX1->Text == "")
        {
                EdtX1->Text=IntToStr(X-320);
                EdtY1->Text=IntToStr(Y-218);
        }
        else if(Edit1->Text == "")
        {
                Edit1->Text=IntToStr(X-320);
                Edit2->Text=IntToStr(Y-218);
        }
        else if(Edit3->Text == "")
        {
                Edit3->Text=IntToStr(X-320);
                Edit4->Text=IntToStr(Y-218);
        }
        else if (Edit5->Text == "")
        {
                Edit5->Text=IntToStr(X-320);
                Edit6->Text=IntToStr(Y-218);
        }
}
-- http://www.csie.nctu.edu.tw/~chtai/software.php 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
barryHsu
一般會員


發表:55
回覆:49
積分:20
註冊:2005-01-25

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-10 12:36:12 IP:163.18.xxx.xxx 未訂閱
Hello chtai: 那假如說我要用Button下去做控制呢?因為這樣的話我只能點選一次,假如說我點錯了可以直接修改嗎?因為我想要用點選Button才可以做點選座標值的動作。這樣可行嗎?
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-10 18:35:21 IP:61.66.xxx.xxx 未訂閱
引言: 回 blk5743: Text 是 AnsiString,不能給定 int 吧 應該是 Edit1->Text = IntToStr(123); 才是.
Text 是AnsiString沒錯,不過給int他會自動轉換 雖然是壞習慣,但是可以用 barryHsu你好,我有一個想法,你可以參考一下 1.設定二維陣列a[4][2](四個button,存XY值) 2.你可以用參考點數目的RadioBox或鍵一個Edit來選擇等一下MouseDown後 取得的值要給你一個Button(陣列儲存)用 3.在MouseDown事件中取得座標X,Y存入陣列 4.按下你想輸出的Button(顯示相對應的值在EditBox上) PS點錯了的話,再重點一次就好了,MouseDown事件會把陣列的值更新
系統時間:2024-05-06 16:11:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!