所以我一直在試圖做一些簡單的編碼:移動與WASD鍵藍色正方形,誤差將空隙到彼此(編譯沒有得到代碼)
public static void main (String args[])
{
new MoveWASD();
}
public MoveWASD()
{
super("Use-WASD-to-Move");
setSize(800, 450);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void paint(Graphics g)
{
g.setColor(Color.WHITE);
g.fillRect(0, 0, 800, 450);
g.setColor(Color.BLUE);
g.fillRect(Location[0], Location[1], 20, 20);
System.out.println("PRINTEDs");
}
public class MoveDetection extends Thread implements KeyListener
{
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
public void keyPressed(KeyEvent arg0)
{
public void run()
{
while(true)
{
try
{
if(event.getKeyChar() == 'w')
{
Location[1] = Location[1] - 20;
Repeat = true;
}
else if(event.getKeyChar() == 'd')
{
Location[0] = Location[0] + 20;
}
else if(event.getKeyChar() == 's')
{
Location[1] = Location[1] + 20;
}
else if (event.getKeyChar() == 'a')
{
Location[0] = Location[0] - 20;
}
else
{
Location[0] = Location[0];
}
Thread.sleep(75);
}
catch(Exception e)
{
break;
}
}
}
}
}
然而,一個get當將靜態空隙放入另一個時,出現錯誤,箭頭(向上)指向我的兩個錯誤:一個在下運行其中說: 對於標記「void」的語法錯誤,@期望 和另一個在最終父項下()其中說: 語法錯誤,請插入「EnumBody」來完成BlockStatements 另外,當我在我的movedetection類下的任何「void」下面放置一個「System.out.write()時,它不會顯示,這可能意味着它沒有進入它...... 正如我剛剛開始編碼,我不知道這意味着什麼,有什麼幫助?
? – Zavior
使用eclipse indigo我相信......這有幫助嗎? – user2789610
Eclipse應該用紅色標記向你顯示語法出錯的位置,將你的鼠標光標移到紅色的x上,看看它說了什麼 – Zavior