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

怎麼限制拖曳範圍??

尚未結案
Sephiroth105
一般會員


發表:13
回覆:5
積分:3
註冊:2003-05-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-23 16:01:33 IP:61.219.xxx.xxx 未訂閱
請問我該怎麼寫才能限定滑鼠能移動的範圍... 假設我有一個矩形Rectangle2D.Double 且目前矩形的位置紀錄在TMnodes.x,TMnodes.y 我想要限制這一個矩形能移動的範圍是x軸:-無限大 ~ 無限大 y軸:目前位置的-10 ~ 10之間 我寫法是: preY = TMnodes.y;//先把還沒拖曳之前的y座標記錄起來 TMnodes.x = e.getX();//這邊沒有問題 if(e.getY() - preY >= 10)//滑鼠位置比原先y多出10以上 { TMnodes.y = preY 10;//只加上10就好,表示限制住了 repaint(); return; } else if(e.getY() - preY <= -10)//滑鼠位置比原先y少了10以上 { TMnodes.y = preY - 10;//只減少10 repaint(); return; } else//範圍在原先位置的-10 ~ 10之間 { TMnodes.y = e.getY(); repaint(); } paint裡面就只是依據位置畫出圖形 請問我哪裡寫錯嘛? 我有列出結果他每次都只跑case3也就是範圍在正負10之間.. 請多指教~
系統時間:2024-05-20 10:31:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!