線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2124
推到 Plurk!
推到 Facebook!

有關動態產生圖片 然後拖拉圖片的問題

 
bome2002
一般會員


發表:11
回覆:9
積分:4
註冊:2005-11-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-10-18 15:14:51 IP:61.63.xxx.xxx 訂閱
我有一問題請教一下各位大大們
我需要動態產生10個image 在 gropBox1內,橫向排列
之後需要拖拉圖片至另一處,並記錄X,Y值給Label->Caption 顯示
請教大大們 我應該如何完成後續的動作ㄋ

String PictureName =a.bmp;
int left = 20;
for(int i=0 ; i< 10 ;i )
{
TImage *tmpImage = new TImage(groupBox1);

tmpImage->Parent = groupBox1;
tmpImage->Picture->LoadFromFile(ExtractFilePath("Application.ExeName")
PictureName);
tmpImage->Left =left;

tmpImage->Stretch = true ;
tmpImage->ShowHint = true;

left =40;
}

justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-10-18 23:01:41 IP:59.105.xxx.xxx 未訂閱
我建議寫個類別繼承TImage,修改如下:
.h 檔,在TForm1之前,加入 TMyImage 宣告
class TMyImage : public TImage
{
private:
bool m_bMouseDown;
public:
__fastcall virtual TMyImage(Classes::TComponent* AOwner):TImage(AOwner)
{
m_bMouseDown=false;
}
... other functions ...
};
TForm1 的 private 區加入
void __fastcall MyImageMouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y);
void __fastcall MyImageMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y);
void __fastcall MyImageMouseUp(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y);
TMyImage* myImages[10];

.cpp 檔開始實作上述三個函式,例如MyImageMouseDown
void __fastcall TForm1::MyImageMouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
TMyImage* myImage=reinterpret_cast< TMyImage* >(Sender);
if (myImage != NULL)
{
對 myImage 物件,記錄狀態為滑鼠按下
}
}
MyImageMouseMove 函式,則實作滑鼠移動時(假若為滑鼠按下的狀態),一起移動TMyImage物件
並且將X Y 座標寫出來
MyImageMouseUp 函式,取消滑鼠按下的狀態

產生元件時,改寫為:
//for i=0 to 9
TMyImage* myImage= new TMyImage(this);
myImage->Parent = this;
myImage->MyImageMouseDown;
myImage->MyImageMouseMove;
myImage->MyImageMouseUp;
...
myImages[i]=myImage;
bome2002
一般會員


發表:11
回覆:9
積分:4
註冊:2005-11-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-10-19 09:06:10 IP:61.63.xxx.xxx 訂閱
謝謝這位大大~~~
我已可以試作出來了~~~謝謝囉~~~
系統時間:2024-11-22 9:50:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!