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

請問一各框選區域的問題

答題得分者是:taishyang
starhua
一般會員


發表:10
回覆:18
積分:5
註冊:2003-08-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-28 22:18:13 IP:210.203.xxx.xxx 未訂閱
以下是我參考別人的程式得來的 不過程式中匡選的框框會一直存在(如果連續匡選的話) 不知道有沒有辦法再匡選第二個框的時候第一個框不要出現    
bool check=true;
void __fastcall TForm1::Image1MouseDown(TObject *Sender,
      TMouseButton Button, TShiftState Shift, int X, int Y)
{
  if (check==true)
  {
   Edit1->Text=X;
   Edit2->Text=Y;
   check=false;
  }
  else if(check==false)
  {
   Edit3->Text=X;
   Edit4->Text=Y;
   check=true;
   Image1->Canvas->Pen->Color=clYellow;
   Image1->Canvas->Brush->Style=bsClear;
   Image1->Canvas->Rectangle(Edit1->Text.ToInt(),Edit2->Text.ToInt(),Edit3->Text.ToInt(),Edit4->Text.ToInt());
  }
} 
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-28 22:38:17 IP:61.221.xxx.xxx 未訂閱
引言: 以下是我參考別人的程式得來的 不過程式中匡選的框框會一直存在(如果連續匡選的話) 不知道有沒有辦法再匡選第二個框的時候第一個框不要出現
bool check=true;
void __fastcall TForm1::Image1MouseDown(TObject *Sender,
      TMouseButton Button, TShiftState Shift, int X, int Y)
{
  if (check==true)
  {
   Edit1->Text=X;
   Edit2->Text=Y;
   check=false;
  }
  else if(check==false)
  {
   Edit3->Text=X;
   Edit4->Text=Y;
   check=true;
   Image1->Canvas->Pen->Color=clYellow;
   Image1->Canvas->Brush->Style=bsClear;
   Image1->Canvas->Rectangle(Edit1->Text.ToInt(),Edit2->Text.ToInt(),Edit3->Text.ToInt(),Edit4->Text.ToInt());
  }
} 
starhua 你好: 請參考以下的範例程式碼
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
starhua
一般會員


發表:10
回覆:18
積分:5
註冊:2003-08-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-28 22:59:09 IP:210.203.xxx.xxx 未訂閱
版主所說的連結範例,是利用滑鼠的 MouseDown、MouseMove 及 MouseUp 事件,擷取畫面.我希望能夠在這個MouseDown事件下就能完成了,而且我只要能得到最新的框框就可以了,不需要向範例中得到框框中的影像.不過還是謝謝版主的相告
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-28 23:49:02 IP:140.135.xxx.xxx 未訂閱
starhua您好:  那您試試看下面的方式  
 Image1->Picture->LoadFromFile("背景.bmp"); //載入背景圖片
 if (check==true)
  {
   Edit1->Text=X;
   Edit2->Text=Y;
   check=false;
  }
  else if(check==false)
  {
   Edit3->Text=X;
   Edit4->Text=Y;
   check=true;
   Image1->Canvas->Pen->Color=clYellow;
   Image1->Canvas->Brush->Style=bsClear;
   Image1->Canvas->Rectangle(Edit1->Text.ToInt(),Edit2->Text.ToInt(),Edit3->Text.ToInt(),Edit4->Text.ToInt());
  }
 
順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~ 發表人 -
snake720105
一般會員


發表:7
回覆:12
積分:3
註冊:2005-02-16

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-04-19 18:26:10 IP:218.32.xxx.xxx 未訂閱
引言: starhua您好: 那您試試看下面的方式
 Image1->Picture->LoadFromFile("背景.bmp"); //載入背景圖片
 if (check==true)
  {
   Edit1->Text=X;
   Edit2->Text=Y;
   check=false;
  }
  else if(check==false)
  {
   Edit3->Text=X;
   Edit4->Text=Y;
   check=true;
   Image1->Canvas->Pen->Color=clYellow;
   Image1->Canvas->Brush->Style=bsClear;
   Image1->Canvas->Rectangle(Edit1->Text.ToInt(),Edit2->Text.ToInt(),Edit3->Text.ToInt(),Edit4->Text.ToInt());
  }
 
順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~ 發表人 - >< face="Verdana, Arial, Helvetica"> 我是希望能夠在MOUSEDOWN,MOUSEMOVE,MOUSEUP這三個事件中完成...也就是說希望能夠按住滑鼠的時候可以拖曳並看到框選的大小 輕步玉階飛夜色~~ 不勝蕭然掩月來~~
------
輕步玉階飛夜色~~
不勝蕭然掩月來~~
系統時間:2024-11-24 1:37:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!