java frame 大小_Java JFrame大小和中心

我正在研究一个使用2D图形形状创建骰子面的uni项目.我已经完成了所有工作,但我遇到了一个问题:当我调整窗口大小时,我希望我的形状能够改变大小,而不是仅仅保持静止以使其保持在中间位置.

我以为我可以设置位置,以便中心试过这个但是没有用.我不确定但是我是否必须编写坐标以使其更改窗口的大小?对这两个问题的任何帮助都会很棒.

GUI设置代码

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.Rectangle;

import javax.swing.JComponent;

import javax.swing.JFrame;

public class DiceSimulator {

public static void main(String[] args) {

JFrame frame = new JFrame("DiceSimulator");

frame.setVisible(true);

frame.setSize(400, 300);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

draw object = new draw();

frame.add(object);

frame.setLocationRelativeTo(null);

object.drawing();

}

}

绘画代码

import javax.swing.*;

import java.awt.*;

//import java.util.Random;

public class draw extends JComponent {

public void drawing() {

repaint();

}

public void paintComponent(Graphics g) {

super.paintComponent(g);

//Random1 random = new Random1();

Graphics2D g2 = (Graphics2D) g;

g.setColor(Color.BLACK);

Rectangle box = new Rectangle(115, 60, 150, 150);

g2.fill(box);

g.setColor(Color.WHITE);

g.fillOval(145, 75, 30, 30);

g.setColor(Color.WHITE);

g.fillOval(205, 75, 30, 30);

g.setColor(Color.WHITE);

g.fillOval(145, 115, 30, 30);

g.setColor(Color.WHITE);

g.fillOval(205, 115, 30, 30);

g.setColor(Color.WHITE);

g.fillOval(145, 155, 30, 30);

g.setColor(Color.WHITE);

g.fillOval(205, 155, 30, 30);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值