Graphics: setClip(int x, int y, int width, int height)
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;
public class J2MEClippingRegion extends MIDlet {
private Display display;
private MyCanvas canvas;
public J2MEClippingRegion() {
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 J2MEClippingRegion clippingRegion;
private Image image = null;
public MyCanvas(J2MEClippingRegion clippingRegion) {
this.clippingRegion = clippingRegion;
exit = new Command("Exit", Command.EXIT, 1);
addCommand(exit);
setCommandListener(this);
try {
image = Image.createImage(70, 70);
Graphics graphics = image.getGraphics();
graphics.setColor(255, 0, 0);
graphics.fillArc(10, 10, 60, 50, 180, 180);
} catch (Exception error) {
Alert alert = new Alert("Failure", "Creating Image", null, null);
alert.setTimeout(Alert.FOREVER);
display.setCurrent(alert);
}
}
protected void paint(Graphics graphics) {
if (image != null) {
graphics.setColor(255, 255, 255);
graphics.fillRect(0, 0, getWidth(), getHeight());
graphics.setClip(35, 35, 40, 40);
graphics.drawImage(image, 30, 30, Graphics.VCENTER | Graphics.HCENTER);
}
}
public void commandAction(Command command, Displayable display) {
if (command == exit) {
clippingRegion.exitMIDlet();
}
}
}
}
Related examples in the same category
1. | Graphics.BASELINE | | |
2. | Graphics.BOTTOM | | |
3. | Graphics.DOTTED | | |
4. | Graphics.HCENTER | | |
5. | Graphics.LEFT | | |
6. | Graphics.SOLID | | |
7. | Graphics.TOP | | |
8. | Graphics.VCENTER | | |
9. | Graphics: drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) | | |
10. | Graphics: drawLine(int x1, int y1, int x2, int y2) | | |
11. | Graphics: drawString(String str, int x, int y, int anchor) | | |
12. | Graphics: fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) | | |
13. | Graphics: fillRect(int x, int y, int width, int height) | | |
14. | Graphics: fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) | | |
15. | Graphics: setColor(int RGB) | | |
16. | Graphics: setGrayScale(int value) | | |
17. | Graphics: setStrokeStyle(int style) | | |
18. | Graphics: translate(int x, int y) | | |