java swing 画多边形_Java如何使用GUI绘制多边形?

论坛 期权论坛 脚本     
已经匿名di用户   2022-3-21 23:59   2587   0

在Java的GUI编程中,如何使用GUI绘制多边形?

以下示例演示如何通过创建Polygon()对象来绘制多边形。addPoint()和drawPolygon()方法用于绘制多边形。

package com.yiibai;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class DisplayPolygon extends JPanel {

public void paintComponent(Graphics g) {

super.paintComponent(g);

Polygon p = new Polygon();

for (int i = 0; i < 5; i++)

p.addPoint((int) (100 + 50 * Math.cos(i * 2 * Math.PI / 5)),

(int) (100 + 50 * Math.sin(i * 2 * Math.PI / 5)));

g.drawPolygon(p);

}

public static void main(String[] args) {

JFrame frame = new JFrame();

frame.setTitle("Polygon");

frame.setSize(350, 250);

frame.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

Container contentPane = frame.getContentPane();

contentPane.add(new DisplayPolygon());

frame.setVisible(true);

}

}

上述代码示例将产生以下结果。

f06dd03d72e3de83f98da1afd983b8d1.png

示例-2

以下是使用GUI绘制多边形的另一个示例。

package com.yiibai;

import java.awt.Color;

import java.awt.Container;

import java.awt.Graphics;

import java.awt.Polygon;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class DisplayPolygon2 extends JPanel {

public void paintComponent(Graphics g) {

super.paintComponent(g);

Polygon p = new Polygon();

for (int i = 0; i < 5; i++)

p.addPoint((int) (100 + 50 * Math.cos(i * 2 * Math.PI / 5)),

(int) (100 + 50 * Math.sin(i * 2 * Math.PI / 5)));

g.drawPolygon(p);

}

public static void main(String[] args) {

JFrame frame = new JFrame();

frame.getContentPane().setBackground(Color.YELLOW);

frame.setTitle("使用GUI绘制多边形");

frame.setSize(350, 250);

frame.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

Container contentPane = frame.getContentPane();

contentPane.add(new DisplayPolygon2());

frame.show();

}

}

上述代码示例将产生以下结果。

d8ebe62b8ff9a3ac7d2d04638a5f72e2.png

我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP