Guest Pubblicato: 7 Marzo 2011 Segnalazione Share Pubblicato: 7 Marzo 2011 (modificato) import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Disegna extends MIDlet { public void startApp() { Display display = Display.getDisplay(this); display.setCurrent(new Linea()); } // startApp public void pauseApp() { } // pauseApp public void destroyApp(boolean unconditional) { } // destroyApp protected class Linea extends Canvas { private int xAtt, yAtt, xPrec, yPrec; private boolean primoTouch = true; public Linea() { setFullScreenMode(true); } // Linea public void pointerReleased (int x, int y) { primoTouch = true; } // pointReleased public void pointerDragged (int x, int y) { if(primoTouch) { xAtt = x; yAtt = y; primoTouch = false; } // if xPrec = xAtt; yPrec = yAtt; xAtt = x; yAtt = y; repaint(); } // pointDragged public void paint (Graphics g) { g.drawLine(xPrec, yPrec, xAtt, yAtt); } // paint } // Linea } // Disegna Il problema è che finchè lo provo sull'emulatore funziona, ma sul telefono disegna le linee tutte tratteggiate, come su il repaint() non riuscisse a star dietro al movimento del dito.. Cosa posso fare? Modificato 7 Marzo 2011 da Guest Link to comment Condividi su altri siti More sharing options...
Il.Socio Pubblicato: 8 Marzo 2011 Segnalazione Share Pubblicato: 8 Marzo 2011 (modificato) Credo che potresti risolvere cosi'... nel pointerDragged() disegni le varie linee su un oggetto Image senza richiamare il repaint() nel paint() disegni l'oggetto Image su schermo aggiungi un timer che, di tanto in tanto, richiama il repaint() del canvas Modificato 8 Marzo 2011 da Il.Socio Link to comment Condividi su altri siti More sharing options...
Guest Pubblicato: 8 Marzo 2011 Segnalazione Share Pubblicato: 8 Marzo 2011 (modificato) Alla fine ho risolto mantenendo in memoria i punti in un array e disegnando tutte le linee tra un punto e il successivo ogni volta.. non so perchè ma nel telefono se ne perdevano alcune per strada! Modificato 8 Marzo 2011 da Guest Link to comment Condividi su altri siti More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Accedi Ora