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); } }
No comments:
Post a Comment