為什麽DragOver事件不起作用? |
答題得分者是:eaglewolf
|
mp394681143
一般會員 發表:64 回覆:40 積分:20 註冊:2009-10-11 發送簡訊給我 |
我想讓按鈕從Panel1走過,為什麽Panel1它沒有反應呢?
[code delphi] procedure TForm1.Timer1Timer(Sender: TObject); begin Timer1.Interval := 100; if button1 <> nil then button1.Left := button1.Left 2; end; procedure TForm1.Panel1DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); begin showmessage('你踩到我了!'); end; [/code] |
eaglewolf
資深會員 發表:4 回覆:268 積分:429 註冊:2006-07-06 發送簡訊給我 |
這樣並沒有產生Drag的行為
DragOver 當然不會被觸發 將button1的DragMode屬性改成dmAutomatic 以手動方式將Button1拖進panel1 ps. Button1 不會跟著滑鼠移動(需自行寫code)
------
先查HELP 再查GOOGLE 最後才發問 沒人有義務替你解答問題 在標題或文章中標明很急 並不會增加網友回答速度 Developing Tool: 1.Delphi 6 2.Visual Studio 2005 3.Visual Studio 2008 DBMS: MS-SQL |
mp394681143
一般會員 發表:64 回覆:40 積分:20 註冊:2009-10-11 發送簡訊給我 |
|
eaglewolf
資深會員 發表:4 回覆:268 積分:429 註冊:2006-07-06 發送簡訊給我 |
參考如下
[code delphi] var bDrag:Boolean=False; iX,iY:Integer; procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin bDrag:=True; iX:=X; iY:=Y; end; procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if bDrag then begin Button1.Top := Button1.Top Y - iY; Button1.Left := Button1.Left X - iX; end; end; procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin bDrag :=False; end; [/code] ===================引 用 mp394681143 文 章=================== 應該怎麽寫?button才跟著滑鼠走?小弟菜鳥?
------
先查HELP 再查GOOGLE 最後才發問 沒人有義務替你解答問題 在標題或文章中標明很急 並不會增加網友回答速度 Developing Tool: 1.Delphi 6 2.Visual Studio 2005 3.Visual Studio 2008 DBMS: MS-SQL |
mp394681143
一般會員 發表:64 回覆:40 積分:20 註冊:2009-10-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |