用java编写在界面中画圆_用java语言编写画随机的圆 十万火急 求大神帮忙!!!...
展开全部
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语言编写画随机的圆 十万火急 求大神帮忙!!!...相关推荐
- java主界面设置背景图片_java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)...
java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改) 关注:223 答案:4 mip版 解决时间 2021-01-26 22:09 提问者非莪莫属 2021-01 ...
- java 找茬_求大神帮忙找茬,就是改不过来错误
求大神帮忙找茬,就是改不过来错误 package 模拟去掉字符串两端的空格; import java.util.Scanner; class trim1{ String str=null; publi ...
- java计算器 运算符优先级_跪求大神帮忙,怎样在java 计算器中实现,四则运算优先级;...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 代码如下,跪求大神补充 import java.awt.*; import java.awt.event.*; import java.awt.image ...
- 如何修改matlab中的语句,求大神帮忙看一下这个语句怎么改!!!!!
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 clc clear W=imread('e:\matlab\aaa\1.jpg'); imshow (W); I = rgb2gray(W); % 灰度处 ...
- 编写lisp程序解一元二次方程_用C语言编写一程序求解一元二次方程的根。
展开全部 C语言编写一程序求解32313133353236313431303231363533e78988e69d8331333365643661一元二次方程的根: #include #include ...
- 编写代码java_求大神帮忙!编写java代码!
XhstormR //部门类 public class DeptVo { private String deptName; private int num; public DeptVo(String ...
- java商品类_编写java的一个商品类,急用,求大神帮忙,非常感谢
要求要有输入/输出交互类和对象继承控制语句排序/最值下面是一个继承范例publicclassGoodsSetting{publicstaticvoidmain(String[]args){Keyboa ...
- java 书 例子_刚学了java中的方法,看了书本的例子不会做,求大神做出来研究下...
深时光 package three.one;public class Cube {/* Cube类定义要求:(1)长length,宽width为double类型,高height 为int类型.(2) ...
- java 重启系统_java 程序,实现重启功能。求大神帮忙,急
展开全部 电脑重启么???? processbuiler,process,执行doc命令即可,so easy给你,小挫32313133353236313431303231363533e4b893e5b ...
最新文章
- android小程序案例_小程序案例赏析:高质量的小程序怎么做
- 少标签数据学习,54页ppt
- 使用UIScrollView 实现分页功能
- python时间重叠_python-检测重叠的日期重复规则
- 神策数据荣获 36 氪 「2020 中国新经济之王」之「最具影响力企业」和「最具竞争力企业」双奖 !
- ECCV 2018 | Bi-box行人检测:‘行人遮挡’为几何?
- c++网吧计费系统_云游戏火了,中国14万家网吧走向何处?
- node+express创建第一个node项目
- linux添加定时器防抖,linux驱动2.3按键中断-定时器防抖
- Starling自适应设备大小的做法
- shell 死循环if判断_一个简单的shell脚本问题!怎么出现了死循环呢?谢谢
- 局域网访问PHP项目网站 用IP地址进入
- 计算机控制面板程序可以设置鼠标,外设门诊:游戏中如何使用鼠标宏提升操作...
- SpringBoot整合CAS服务
- [转载]关于wm系统同步时ActiveSync出现85010014错误号的解决办法
- 010Editor查看PE文件
- 【机器学习】完整的机器学习项目演练:第三部分
- 我不是九爷 带你了解 docker实战命令
- C语言 代码 九九乘法表
- 怎么用ai做出适量插画_平面插画图文教程,如何用AI制作矢量人像插画