Java/J2ME/Shape
Содержание
Arc
<source lang="java">
//jad file (please verify the jar size) /* MIDlet-Name: ArcExampleMIDlet MIDlet-Version: 1.0 MIDlet-Vendor: MyCompany MIDlet-Jar-URL: ArcExampleMIDlet.jar MIDlet-1: ArcExampleMIDlet, , ArcExampleMIDlet MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-JAR-SIZE: 100
- /
import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.rumand; import javax.microedition.lcdui.rumandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class ArcExampleMIDlet extends MIDlet {
private Display display; private MyCanvas canvas; public ArcExampleMIDlet() { display = Display.getDisplay(this); canvas = new MyCanvas(this); } protected void startApp() { display.setCurrent(canvas); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} class MyCanvas extends Canvas implements CommandListener {
private Command exit; private ArcExampleMIDlet arcExample; public MyCanvas(ArcExampleMIDlet arcExample) { this.arcExample = arcExample; exit = new Command("Exit", Command.EXIT, 1); addCommand(exit); setCommandListener(this); } protected void paint(Graphics graphics) { graphics.setColor(255, 255, 255); graphics.fillRect(0, 0, getWidth(), getHeight()); graphics.setColor(255, 0, 0); graphics.drawArc(0, 0, getWidth(), getHeight(), 180, 180); } public void commandAction(Command command, Displayable displayable) { if (command == exit) { arcExample.exitMIDlet(); } }
}
</source>
Arc Filled Example
<source lang="java">
//jad file (please verify the jar size) /* MIDlet-Name: ArcFilledExample MIDlet-Version: 1.0 MIDlet-Vendor: MyCompany MIDlet-Jar-URL: ArcFilledExample.jar MIDlet-1: ArcFilledExample, , ArcFilledExample MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-JAR-SIZE: 100
- /
import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.rumand; import javax.microedition.lcdui.rumandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class ArcFilledExample extends MIDlet {
private Display display; private MyCanvas canvas; public ArcFilledExample() { display = Display.getDisplay(this); canvas = new MyCanvas(this); } protected void startApp() { display.setCurrent(canvas); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} class MyCanvas extends Canvas implements CommandListener {
private Command exit; private ArcFilledExample arcFilledExample; public MyCanvas(ArcFilledExample arcFilledExample) { this.arcFilledExample = arcFilledExample; exit = new Command("Exit", Command.EXIT, 1); addCommand(exit); setCommandListener(this); } protected void paint(Graphics graphics) { graphics.setColor(255, 255, 255); graphics.fillRect(0, 0, getWidth(), getHeight()); graphics.setColor(255, 0, 0); graphics.fillArc(0, 0, getWidth(), getHeight(), 180, 180); } public void commandAction(Command command, Displayable displayable) { if (command == exit) { arcFilledExample.exitMIDlet(); } }
}
</source>
Draw arc on a canvas
<source lang="java">
/*--------------------------------------------------
- Arcs.java
- Draw arc on a canvas
- Example from the book: Core J2ME Technology
- Copyright John W. Muchow http://www.CoreJ2ME.ru
- You may use/modify for any non-commercial purpose
- -------------------------------------------------*/
import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Arcs extends MIDlet {
private Display display; // The display private ArcsCanvas canvas; // Canvas public Arcs() { display = Display.getDisplay(this); canvas = new ArcsCanvas(this); } protected void startApp() { display.setCurrent( canvas ); } protected void pauseApp() { } protected void destroyApp( boolean unconditional ) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} /*--------------------------------------------------
- Class ArcsCanvas
- Draw arcs
- -------------------------------------------------*/
class ArcsCanvas extends Canvas implements CommandListener {
private Command cmExit; // Exit midlet private Arcs midlet; public ArcsCanvas(Arcs midlet) { this.midlet = midlet; // Create exit command & listen for events cmExit = new Command("Exit", Command.EXIT, 1); addCommand(cmExit); setCommandListener(this); } /*-------------------------------------------------- * Draw an arc *-------------------------------------------------*/ protected void paint(Graphics g) { // Start at 3 o"clock and rotate 225 degrees g.drawArc(5, 5, 75, 75, 0, 225);
// g.fillArc(5, 5, 75, 75, 0, 225);
// Start at 12 o"clock and rotate 225 degrees
// g.drawArc(5, 5, 75, 75, 90, 225);
// Change the size of the bounding box // Start at 12 o"clock and rotate 225 degrees
// g.drawArc(25, 35, 30, 50, 90, 225);
} public void commandAction(Command c, Displayable d) { if (c == cmExit) midlet.exitMIDlet(); }
}
</source>
Filled Rectangle Example
<source lang="java">
//jad file (please verify the jar size) /* MIDlet-Name: FilledRectangleExample MIDlet-Version: 1.0 MIDlet-Vendor: MyCompany MIDlet-Jar-URL: FilledRectangleExample.jar MIDlet-1: FilledRectangleExample, , FilledRectangleExample MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-JAR-SIZE: 100
- /
import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.rumand; import javax.microedition.lcdui.rumandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class FilledRectangleExample extends MIDlet {
private Display display; private MyCanvas canvas; public FilledRectangleExample() { display = Display.getDisplay(this); canvas = new MyCanvas(this); } protected void startApp() { display.setCurrent(canvas); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} class MyCanvas extends Canvas implements CommandListener {
private Command exit; private FilledRectangleExample filledRectangleExample; public MyCanvas(FilledRectangleExample filledRectangleExample) { this.filledRectangleExample = filledRectangleExample; exit = new Command("Exit", Command.EXIT, 1); addCommand(exit); setCommandListener(this); } protected void paint(Graphics graphics) { graphics.setColor(255, 255, 255); graphics.fillRect(0, 0, getWidth(), getHeight()); graphics.setColor(0, 0, 255); graphics.fillRect(2, 2, 20, 20); graphics.fillRoundRect(20, 20, 60, 60, 15, 45); } public void commandAction(Command command, Displayable displayable) { if (command == exit) { filledRectangleExample.exitMIDlet(); } }
}
</source>
Rectangle Example
<source lang="java">
//jad file (please verify the jar size) /* MIDlet-Name: RectangleExample MIDlet-Version: 1.0 MIDlet-Vendor: MyCompany MIDlet-Jar-URL: RectangleExample.jar MIDlet-1: RectangleExample, , RectangleExample MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-JAR-SIZE: 100
- /
import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.rumand; import javax.microedition.lcdui.rumandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class RectangleExample extends MIDlet {
private Display display; private MyCanvas canvas; public RectangleExample() { display = Display.getDisplay(this); canvas = new MyCanvas(this); } protected void startApp() { display.setCurrent(canvas); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} class MyCanvas extends Canvas implements CommandListener {
private Command exit = new Command("Exit", Command.EXIT, 1); private RectangleExample rectangleExample; public MyCanvas(RectangleExample rectangleExample) { this.rectangleExample = rectangleExample; addCommand(exit); setCommandListener(this); } protected void paint(Graphics graphics) { graphics.setColor(255, 255, 255); graphics.fillRect(0, 0, getWidth(), getHeight()); graphics.setColor(255, 0, 0); graphics.drawRect(2, 2, 20, 20); graphics.drawRoundRect(20, 20, 60, 60, 15, 45); } public void commandAction(Command command, Displayable displayable) { if (command == exit) { rectangleExample.exitMIDlet(); } }
}
</source>
Rectangles
<source lang="java">
/*--------------------------------------------------
- Rectangles.java
- Draw rectangles on a canvas
- Example from the book: Core J2ME Technology
- Copyright John W. Muchow http://www.CoreJ2ME.ru
- You may use/modify for any non-commercial purpose
- -------------------------------------------------*/
import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class RectanglesMIDlet extends MIDlet {
private Display display; // The display private RectangleCanvas canvas; // Canvas public Rectangles() { display = Display.getDisplay(this); canvas = new RectangleCanvas(this); } protected void startApp() { display.setCurrent( canvas ); } protected void pauseApp() { } protected void destroyApp( boolean unconditional ) { } public void exitMIDlet() { destroyApp(true); notifyDestroyed(); }
} /*--------------------------------------------------
- Class RectangleCanvas
- Draw arcs
- -------------------------------------------------*/
class RectangleCanvas extends Canvas implements CommandListener {
private Command cmExit; // Exit midlet private Rectangles midlet; public RectangleCanvas(Rectangles midlet) { this.midlet = midlet; // Create exit command & listen for events cmExit = new Command("Exit", Command.EXIT, 1); addCommand(cmExit); setCommandListener(this); } /*-------------------------------------------------- * Draw an arc *-------------------------------------------------*/ protected void paint(Graphics g) { g.drawRect(1, 1, 25, 25); g.drawRoundRect(28, 28, 45, 45, 15, 45);
// g.fillRect(1, 1, 25, 25); // g.fillRoundRect(28, 28, 45, 45, 15, 45);
} public void commandAction(Command c, Displayable d) { if (c == cmExit) midlet.exitMIDlet(); }
}
</source>