import java.awt.*; import java.awt.event.*; public class DrawRoundRectTest extends Panel { public static void main(String[] args) { DrawRoundRectTest p = new DrawRoundRectTest(); final Frame f = new Frame(); f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) {f.dispose(); System.exit(1);}}); f.add(p); f.pack(); f.setVisible(true); } public Dimension getPreferredSize() { return new Dimension(500, 500); } public void paint( Graphics g ) { // left side // rectangles should be identical g.setColor(Color.red); g.drawRect(50, 50, 300, 100); g.setColor(Color.black); g.drawRoundRect(50, 50, 300, 100, 0, 0); // small round corners g.setColor(Color.red); g.drawRect(50, 200, 300, 100); g.setColor(Color.black); g.drawRoundRect(50, 200, 300, 100, 25, 25); // round ends g.setColor(Color.red); g.drawRect(50, 350, 300, 100); g.setColor(Color.black); g.drawRoundRect(50, 350, 300, 100, 25, 100); // right side // circle only g.setColor(Color.blue); g.drawOval(375, 50, 100, 100); // round rectangle should exactly cover circle g.setColor(Color.blue); g.drawOval(375, 200, 100, 100); g.setColor(Color.black); g.drawRoundRect(375, 200, 100, 100, 100, 100); // round rectangle should look like a circle g.setColor(Color.red); g.drawRect(375, 350, 100, 100); g.setColor(Color.black); g.drawRoundRect(375, 350, 100, 100, 100, 100); } }