0
這是我的第一篇文章,所以如果需要其他信息,請讓我知道。 我正在Java GUI中製作遊戲,只有兩個有希望的快速問題。目前,我可以畫一個地圖屏幕和泛用下面的代碼周圍的地圖: 私有類MoveMap實現的MouseMotionListener {在GUI地圖上平移Java
@Override
public void mouseDragged(MouseEvent e) {
}
@Override
public void mouseMoved(MouseEvent e) {
if(e.getX() > swidth-30){
if(xmod+(columns*30) > swidth){
xmod-=30;
repaint();
}
}
else if(e.getX() < 30){
if(xmod < 0){
xmod+=30;
repaint();
}
}
else if(e.getY() > sheight-30){
if(ymod+(rows*30) > sheight){
ymod-=30;
repaint();
}
}
else if(e.getY() < 30){
if(ymod < 0){
ymod+=30;
repaint();
}
}
else{
}
}
}
唯一的問題是鼠標必須在屏幕的邊緣不斷移動,不斷泛。我的問題是,如果有方法讓鼠標在屏幕邊緣並在更新圖形時持續平移?我的第二個問題是,如果這可以適用於人物移動以及?我想也許一個線程將是一個可能的解決方案,但不熟悉使用它們。謝謝!
首先感謝您的快速響應!我只是有點困惑,計時器或後臺線程如何解決它。就像我會保持MouseMotionListener? – yanman1234
好吧,讓計時器工作,但當鼠標離開邊緣時繼續移動地圖。我有'「Timer」.stop();'我在哪裏檢測鼠標是否離開,但似乎忽略它。有什麼建議麼? – yanman1234
我現在不在PC上,但它聽起來像你沒有使用相同/單一的計時器參考 – MadProgrammer