使用java.awt.Graphics2D画圆角矩形,,在java awt中画圆
分享于 点击 9644 次 点评:91
使用java.awt.Graphics2D画圆角矩形,,在java awt中画圆
在java awt中画圆角矩形和普通矩形相似,都是使用RoundRectangle2D.Float
方法,但画圆角矩形时需要添两个额外的参数,如下代码:
public void paint(Graphics g) { Graphics2D graphics2 = (Graphics2D) g; RoundRectangle2D roundedRectangle = new RoundRectangle2D.Float(100, 100, 240, 160, 10, 10); graphics2.draw(roundedRectangle); }
RoundRectangle2D.Float()
的六个参数意义说明如下:
下面是完整的代码:
import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.geom.RoundRectangle2D;/** * Displays a JFrame and draws a rounded ractangle on it using the Java 2D Graphics API * * @author byrx.net */public class Java2DFrame extends javax.swing.JFrame { /** * Creates a new instance of Java2DFrame */ public Java2DFrame() { initComponents(); } /** * This is the method where the rounded rectangle is drawn. * * @param g The graphics object */ public void paint(Graphics g) { Graphics2D graphics2 = (Graphics2D) g; RoundRectangle2D roundedRectangle = new RoundRectangle2D.Float(100, 100, 240, 160, 10, 10); graphics2.draw(roundedRectangle); } // <editor-fold defaultstate="collapsed" desc=" Generated Code "> private void initComponents() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(0, 400, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(0, 300, Short.MAX_VALUE) ); pack(); }// </editor-fold> /** * Starts the program * * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Java2DFrame().setVisible(true); } }); }}
图示如下:
用户点评