展开全部

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

class DrawPanel extends JPanel{

int diameter;

public DrawPanel() {

super();

}

public void updateDia(int dia){

this.diameter = dia ;

this.updateUI();

}

public void paint(Graphics g){

g.setColor(Color.RED);

int x = Math.max(0, (getWidth() - diameter)/2);

int y = Math.max(0, (getWidth() - diameter)/2);

g.drawOval(x,y,diameter,diameter);

}

}

public class CircleFrame extends JFrame{

public static void main(String[] args){

new CircleFrame().setVisible(true);

}

JTextField diameterField = new JTextField();

JButton submit = new JButton("提交");

JLabel diameterLabel = new JLabel("直径 :");

DrawPanel drawPanel = new DrawPanel();

public static final int BLANK = 30;

public static final int INIT_SIZE = 200;

public static final int INFO_HEIGHT = 30;

public CircleFrame() {

super("Draw Circle");

initPanel();

this.setSize(INIT_SIZE ,INIT_SIZE + INFO_HEIGHT);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

private void initPanel() {

diameterField.setText("0");

drawPanel.setSize(INIT_SIZE,INIT_SIZE);

submit.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

updateDrawPanel();

}

});

JPanel infoPanel = new JPanel();

infoPanel.setLayout(new BorderLayout());

infoPanel.add(diameterLabel,BorderLayout.WEST);

infoPanel.add(diameterField,BorderLayout.CENTER);

infoPanel.add(submit,BorderLayout.EAST);

getContentPane().setLayout(new BorderLayout());

getContentPane().add(infoPanel,BorderLayout.NORTH);

getContentPane().add(drawPanel,BorderLayout.CENTER);

}

private void updateDrawPanel(){

int dia;

try {

dia = Integer.parseInt(diameterField.getText());

} catch(Exception e){

JOptionPane.showMessageDialog(this,"wrong diameter !","wrong",JOptionPane.OK_OPTION);

return;

}

if(dia

JOptionPane.showMessageDialog(this,"wrong diameter !","wrong",JOptionPane.OK_OPTION);

return;

}

int nowSize = Math.max(dia+BLANK, INIT_SIZE);

drawPanel.updateDia(dia);

drawPanel.setSize(nowSize,nowSize);

setSize(new Dimension(nowSize,nowSize+INFO_HEIGHT));

this.validate();

}

}

我以前的一个程序,你先运行下这个,看看效果,然后在这个基础上改一下,应该不e68a8462616964757a686964616f31333332623364难!

用java编写在界面中画圆_用java语言编写画随机的圆 十万火急 求大神帮忙!!!...相关推荐

  1. java主界面设置背景图片_java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)...

    java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改) 关注:223  答案:4  mip版 解决时间 2021-01-26 22:09 提问者非莪莫属 2021-01 ...

  2. java 找茬_求大神帮忙找茬,就是改不过来错误

    求大神帮忙找茬,就是改不过来错误 package 模拟去掉字符串两端的空格; import java.util.Scanner; class trim1{ String str=null; publi ...

  3. java计算器 运算符优先级_跪求大神帮忙,怎样在java 计算器中实现,四则运算优先级;...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 代码如下,跪求大神补充 import java.awt.*; import java.awt.event.*; import java.awt.image ...

  4. 如何修改matlab中的语句,求大神帮忙看一下这个语句怎么改!!!!!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 clc clear W=imread('e:\matlab\aaa\1.jpg'); imshow (W); I = rgb2gray(W); % 灰度处 ...

  5. 编写lisp程序解一元二次方程_用C语言编写一程序求解一元二次方程的根。

    展开全部 C语言编写一程序求解32313133353236313431303231363533e78988e69d8331333365643661一元二次方程的根: #include #include ...

  6. 编写代码java_求大神帮忙!编写java代码!

    XhstormR //部门类 public class DeptVo { private String deptName; private int num; public DeptVo(String  ...

  7. java商品类_编写java的一个商品类,急用,求大神帮忙,非常感谢

    要求要有输入/输出交互类和对象继承控制语句排序/最值下面是一个继承范例publicclassGoodsSetting{publicstaticvoidmain(String[]args){Keyboa ...

  8. java 书 例子_刚学了java中的方法,看了书本的例子不会做,求大神做出来研究下...

    深时光 package three.one;public class Cube {/*  Cube类定义要求:(1)长length,宽width为double类型,高height 为int类型.(2) ...

  9. java 重启系统_java 程序,实现重启功能。求大神帮忙,急

    展开全部 电脑重启么???? processbuiler,process,执行doc命令即可,so easy给你,小挫32313133353236313431303231363533e4b893e5b ...

最新文章

  1. android小程序案例_小程序案例赏析:高质量的小程序怎么做
  2. 少标签数据学习,54页ppt
  3. 使用UIScrollView 实现分页功能
  4. python时间重叠_python-检测重叠的日期重复规则
  5. 神策数据荣获 36 氪 「2020 中国新经济之王」之「最具影响力企业」和「最具竞争力企业」双奖 !
  6. ECCV 2018 | Bi-box行人检测:‘行人遮挡’为几何?
  7. c++网吧计费系统_云游戏火了,中国14万家网吧走向何处?
  8. node+express创建第一个node项目
  9. linux添加定时器防抖,linux驱动2.3按键中断-定时器防抖
  10. Starling自适应设备大小的做法
  11. shell 死循环if判断_一个简单的shell脚本问题!怎么出现了死循环呢?谢谢
  12. 局域网访问PHP项目网站 用IP地址进入
  13. 计算机控制面板程序可以设置鼠标,外设门诊:游戏中如何使用鼠标宏提升操作...
  14. SpringBoot整合CAS服务
  15. [转载]关于wm系统同步时ActiveSync出现85010014错误号的解决办法
  16. 010Editor查看PE文件
  17. 【机器学习】完整的机器学习项目演练:第三部分
  18. 我不是九爷 带你了解 docker实战命令
  19. C语言 代码 九九乘法表
  20. 怎么用ai做出适量插画_平面插画图文教程,如何用AI制作矢量人像插画

热门文章

  1. nginx报错worker_processes directive is duplicate
  2. 面向5G行业应用的OpenUPF及关键技术
  3. CSS(长度单位,RGB值,盒子模型)
  4. xshell 常用命令1
  5. 预期税收支出减少 苹果或将成美国税改最大赢家
  6. AR市场为何频频“呼唤”苹果?
  7. html js注册页面代码,JS一个简单的注册页面实例
  8. 帮你免于失业的十大软件技术!
  9. matlab模拟台球比赛,Matlab 台球模拟程序 动画演示
  10. shortcuts使用