Java Tutorial/J2ME/Graphics

Материал из Java эксперт
Перейти к: навигация, поиск

Change stroke style between drawing

   <source lang="java">

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 RectMIDlet extends MIDlet implements CommandListener {

 private Command exitCommand;
 Display display;
 public void startApp() {
   Display display = Display.getDisplay(this);
   Displayable d = new RectCanvas();
   exitCommand = new Command("Exit", Command.EXIT, 1);
   d.addCommand(exitCommand);
   d.setCommandListener(this);
   display.setCurrent(d);
 }
 public void pauseApp() {
 }
 public void destroyApp(boolean unconditional) {
 }
 public void commandAction(Command c, Displayable s) {
   notifyDestroyed();
 }

} class RectCanvas extends Canvas {

 int width = 0;
 int height = 0;
 public void paint(Graphics g) {
   width = getWidth();
   height = getHeight();
   g.setGrayScale(255);
   g.fillRect(0, 0, width - 1, height - 1);
   g.setGrayScale(0);
   g.drawRect(0, 0, width - 1, height - 1);
   g.drawRect(5, 5, 40, 40);
   g.fillRoundRect(25, 25, 40, 40, 15, 15);
 }

}</source>





Get stroke style

   <source lang="java">

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 SizeMIDlet extends MIDlet implements CommandListener {

 private Command exitCommand;
 Display display;
 public void startApp() {
   Display display = Display.getDisplay(this);
   Displayable d = new SizeCanvas();
   exitCommand = new Command("Exit", Command.EXIT, 1);
   d.addCommand(exitCommand);
   d.setCommandListener(this);
   display.setCurrent(d);
 }
 public void pauseApp() {
 }
 public void destroyApp(boolean unconditional) {
 }
 public void commandAction(Command c, Displayable s) {
   notifyDestroyed();
 }

} class SizeCanvas extends Canvas {

 int width = 0;
 int height = 0;
 public void paint(Graphics g) {
   width = getWidth();
   height = getHeight();
   g.setGrayScale(255);
   g.fillRect(0, 0, width - 1, height - 1);
   g.setGrayScale(0);
   g.drawString("Stroke Style:" + g.getStrokeStyle(), 0, 60, Graphics.TOP | Graphics.LEFT);
   g.drawRect(0, 0, width - 1, height - 1);
   g.setStrokeStyle(Graphics.DOTTED);
   g.drawLine(00, 40, 60, 60);
 }

}</source>





Set color

   <source lang="java">

import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class SetColorGraphicsMIDlet extends MIDlet {

 private Display display;
 protected void startApp() {
   Canvas canvas = new LineCanvas();
   display = Display.getDisplay(this);
   display.setCurrent(canvas);
 }
 protected void pauseApp() {
 }
 protected void destroyApp(boolean unconditional) {
 }

} class LineCanvas extends Canvas {

 public void paint(Graphics g) {
   int width = getWidth();
   int height = getHeight();
   g.setColor(0xFFFF00);
   g.drawLine(0, height / 4, width - 1, height / 4);
 }

}</source>





Set color and gray scale

   <source lang="java">

import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class DrawRectGraphicsMIDlet extends MIDlet {

 private Display display;
 protected void startApp() {
   Canvas canvas = new LineCanvas();
   display = Display.getDisplay(this);
   display.setCurrent(canvas);
 }
 protected void pauseApp() {
 }
 protected void destroyApp(boolean unconditional) {
 }

} class LineCanvas extends Canvas {

 public void paint(Graphics g) {
   int width = getWidth();
   int height = getHeight();
   g.setColor(0);
   g.setGrayScale(100);
       g.drawRect(width/4, 0, width/2, height/4);
 }

}</source>





Set Gray style

   <source lang="java">

import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class SetGrayScaleGraphicsMIDlet extends MIDlet {

 private Display display;
 protected void startApp() {
   Canvas canvas = new LineCanvas();
   display = Display.getDisplay(this);
   display.setCurrent(canvas);
 }
 protected void pauseApp() {
 }
 protected void destroyApp(boolean unconditional) {
 }

} class LineCanvas extends Canvas {

 public void paint(Graphics g) {
   int width = getWidth();
   int height = getHeight();
   g.setColor(0);
   g.setGrayScale(100);
   g.drawLine(0,  2, width - 1, height / 2);
 }

}</source>





Set stroke style

   <source lang="java">

import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet.MIDlet; public class SetStrokeStyleGraphicsMIDlet extends MIDlet {

 private Display display;
 protected void startApp() {
   Canvas canvas = new LineCanvas();
   display = Display.getDisplay(this);
   display.setCurrent(canvas);
 }
 protected void pauseApp() {
 }
 protected void destroyApp(boolean unconditional) {
 }

} class LineCanvas extends Canvas {

 public void paint(Graphics g) {
   int width = getWidth();
   int height = getHeight();
   g.setColor(0);
   g.setStrokeStyle(Graphics.DOTTED);
   g.drawLine(0, height / 2, width - 1, height / 2);
 }

}</source>





Translate coordinate

   <source lang="java">

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 OrigTransMIDlet extends MIDlet implements CommandListener {

 private Command exitCommand;
 Display display;
 public void startApp() {
   Display display = Display.getDisplay(this);
   Displayable d = new OrigTransCanvas();
   exitCommand = new Command("exit", Command.EXIT, 1);
   d.addCommand(exitCommand);
   d.setCommandListener(this);
   display.setCurrent(d);
 }
 public void pauseApp() {
 }
 public void destroyApp(boolean unconditional) {
 }
 public void commandAction(Command c, Displayable s) {
   notifyDestroyed();
 }

} class OrigTransCanvas extends Canvas {

 int width = 0;
 int height = 0;
 public void paint(Graphics g) {
   width = getWidth();
   height = getHeight();
   g.setGrayScale(255);
   g.fillRect(0, 0, width - 1, height - 1);
   g.setGrayScale(0);
   g.drawRect(0, 0, width - 1, height - 1);
   int counts = 5;
   int step = width / 5;
   for (int i = 1; i <= 5; i++) {
     g.fillRect(0, 0, step, step);
     g.translate(step, step);
   }
 }

}</source>