|
Ellipse2D and Rectangle2D |
package javaswing;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Rectangle2D;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
/**
*
* @web http://java-buddy.blogspot.com/
*/
public class JavaTestSwing {
static JFrameWin jFrameWindow;
public static class MyComponent extends JComponent{
@Override
protected void paintComponent(Graphics g) {
//g.drawImage(bufferedImage, 0, 0, null);
Graphics2D graphics2D = (Graphics2D)g;
int width = getWidth();
int height = getHeight();
Ellipse2D.Double ellipse
= new Ellipse2D.Double(0, 0, width, height);
Rectangle2D.Double rectangle
= new Rectangle2D.Double(width/4, height/4, width/2, height/2);
graphics2D.draw(ellipse);
graphics2D.fill(rectangle);
}
}
public static class JFrameWin extends JFrame{
public JFrameWin(){
this.setTitle("java-buddy.blogspot.com");
this.setSize(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
MyComponent myComponent = new MyComponent();
this.add(myComponent);
}
}
public static void main(String[] args){
Runnable doSwingLater = new Runnable(){
@Override
public void run() {
jFrameWindow = new JFrameWin();
jFrameWindow.setVisible(true);
}
};
SwingUtilities.invokeLater(doSwingLater);
}
}