欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java用按鈕來圓和橢圓

錢艷冰1年前8瀏覽0評論

Java是當前最受歡迎的編程語言之一,它具有廣泛的應用領域。在Java編程中,使用按鈕來畫圓和橢圓是一個非常有趣的項目,可以幫助程序員提高他們的技能。下面我們將詳細介紹如何在Java中使用按鈕畫圓和橢圓。

import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
public class DrawCircleAndOval extends JFrame {
public DrawCircleAndOval() {
super("Draw Circle and Oval");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(500, 500);
this.setVisible(true);
this.add(new CircleAndOvalPanel());
}
private class CircleAndOvalPanel extends JPanel {
private int x = 50;
private int y = 50;
private int radius = 30;
private int width = x + 100;
private int height = y + 80;
public CircleAndOvalPanel() {
JButton btnCircle = new JButton("Circle");
JButton btnOval = new JButton("Oval");
btnCircle.addActionListener(e ->{
radius += 10;
repaint();
});
btnOval.addActionListener(e ->{
width += 10;
height += 10;
repaint();
});
this.add(btnCircle);
this.add(btnOval);
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
Shape circle = new Ellipse2D.Float(x, y, radius, radius);
Shape oval = new Ellipse2D.Float(x, y, width, height);
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setPaint(Color.RED);
g2d.draw(circle);
g2d.setPaint(Color.BLUE);
g2d.draw(oval);
}
}
public static void main(String[] args) {
new DrawCircleAndOval();
}
}

在代碼中,我們首先創建了一個繼承自JFrame的類DrawCircleAndOval,用于創建窗口并添加JPanel。JPanel類CircleAndOvalPanel繼承自JPanel,并設置了圓和橢圓的位置、大小等屬性。我們在CircleAndOvalPanel的構造方法中創建了兩個JButton, 用于觸發圓和橢圓的繪制。當用戶點擊按鈕時,圓的半徑或橢圓的長和寬都會增加,并且組件會重繪。

在CircleAndOvalPanel的paintComponent方法中,我們使用Graphics2D對象創建了圓和橢圓的形狀。我們還使用RenderingHints啟用了反走樣,讓圖形看起來更加平滑。使用Graphics2D對象的draw方法,我們將圓和橢圓繪制到面板上。

這是一個非常簡單的Java項目,但是它可以幫助程序員了解如何使用按鈕進行繪圖,同時提高他們的編程技能。