MilGra
milgra
about
articles
projects

blogroll
bit-101
coding horror
blameit
failblog
beszeljukmac
sghu

navigation
posts
docs
admin

2009-06-10 Quick flash to java switch
December 1st, 2009

I would like to help out those few sad souls who want to switch from flash/flex to java to create some graphical stuff.

I just want to show the basic idea, let’s draw a simple red square.
In flash its simple, since flash is for creating graphics, the main class has to be a Sprite or a MovieClip, and you can directly access the graphics interface of these two, and can draw directly.

In flash, since the first frame is the main sprite, you simply can write

graphics.beginFill( 0xff0000 , 1 );
graphics.drawRect( 0 , 0 , 100 , 100 );

in flex, it looks like this :

Source Code

and there is it.

In java, since its a general purpose programming language, its more complicated.
We need a window, where we can show our graphics, and then we need a component where we can paint our stuff. But still, we can do it quite simply in one class.

To create a window, we simply instantiate java.awt.Frame class, and for drawing we will use the java.awt.Canvas class, which is the simplest component for drawing.

Consider java.awt.Frame as the Stage in flash, and java.awt.Canvas as the main Sprite. So, here we go :

Source Code

The biggest difference that we cannot draw immediately, we have to wait for jvm’s inner call to the paint( Graphics g ) method, altough we can request it by calling the repaint( ) method.

We have an easier job with an applet, because Applet main class is a Panel subclass in which we have the paint method, and its already in a window.

MilGra


powered by kure