Я пытаюсь создать мидлет, с помощью которого я могу рисовать что угодно с помощью клавиш курсора. Я использовал метод drawLine. Но я хочу создать линию, а затем изменить направление, сохраняя предыдущую линию, но линия продолжает вращаться.
По сути, я должен уметь рисовать что угодно в любом направлении.
Это мой код:
public class Pacer extends MIDlet{
public void startApp() {
Displayable d = new PacerCanvas();
d.addCommand(new Command("Exit", Command.EXIT, 0));
d.setCommandListener(new CommandListener() {
public void commandAction(Command c, Displayable s) {
notifyDestroyed();
}
} );
Display.getDisplay(this).setCurrent(d);
}
public void pauseApp() { }
public void destroyApp(boolean unconditional) { }
}
/**
*
* @author Rumman
*/
import javax.microedition.lcdui.*;
public class PacerCanvas extends Canvas {
private String name;
private int w,h,x1,y1,x2,y2;
public PacerCanvas(){
w = getWidth();
h = getHeight();
x1 = w/2 ;
y1 = h/2 ;
x2 = x1 ;
y2 = y1 ;
}
protected void keyPressed(int key){
name = getKeyName(key);
if(name.equals("Right") || name.equals("6")){
x2++;
}
else if(name.equals("Left") || name.equals("4")){
x2--;
}
else if(name.equals("Up") || name.equals("2")){
y2--;
}
else if(name.equals("Down") || name.equals("8")){
y2++;
}
else if(name.equals("1")){
x2--;
y2++;
}
else if(name.equals("3")){
x2++;
y2++;
}
else if(name.equals("7")){
}
else if(name.equals("9")){
}
repaint();
}
public void paint(Graphics g) {
g.setColor(0xffffff);
g.fillRect(0, 0, w, h);
g.setColor(0x000000);
g.drawLine(x1, y1, x2, y2);
}
}