Java高手进,高分悬赏!!解决了再加500分!!
一、要求:使用Swing设计界面,当在文本框输入半径数值,点击”计算按钮”,在Label框中输出圆面积圆面积的计算公式采用:圆面积=半径*半径*3.14圆周长的计算公式采...
一、要求:使用Swing设计界面,当在文本框输入半径数值,点击”计算按钮”,在Label框中输出圆面积
圆面积的计算公式采用:圆面积=半径*半径*3.14
圆周长的计算公式采用:圆周长=半径*2*3.14
程序的功能要求如下:
1.窗体JFrame实用边界布局
2.在North部分使用流式布局,在Center位置使用网格布局
3.在North部分,加入ButtonGroup,加入两个无线按钮(RadioButton),并将他们加入ButtonGroup,两个无线按钮分别对应计算面积,和计算圆周两种情况。
4.在Center部分:网络布局,窗口分割为2*2;生成两个标签(JLabel);生成一个文本框(JTextField):用于输入半径;生成一个JButton,并生成该按钮的事件处理程序。
5.计算面积和周长
6.要求有问题数据的异常处理,当文本域中输入非数字的值时,做出处理
二、推荐实现步骤
a.建立窗口
1.构造窗口(使用JFrame),并获取内容窗格(使用getContentPane方法),窗口标题为”计算圆面积”
构造面板,定义边界布局,并将两个面板分别加入到窗口的North
2.在North位置加入两个RadioButton,并将他们加入到ButtonGroup,设置其中一个RadioButton为选中状态
3.在Center位置加入如下组件(1)一个标签的文本设定为”半径”(2)第二个标签文本定为”计算结果” (3)建立一个文本域组件,用于用户输入半径数值(4)一个按钮组件,按钮上的文本为”计算”,用于启动计算
本人跪求代码,谢谢!! 展开
圆面积的计算公式采用:圆面积=半径*半径*3.14
圆周长的计算公式采用:圆周长=半径*2*3.14
程序的功能要求如下:
1.窗体JFrame实用边界布局
2.在North部分使用流式布局,在Center位置使用网格布局
3.在North部分,加入ButtonGroup,加入两个无线按钮(RadioButton),并将他们加入ButtonGroup,两个无线按钮分别对应计算面积,和计算圆周两种情况。
4.在Center部分:网络布局,窗口分割为2*2;生成两个标签(JLabel);生成一个文本框(JTextField):用于输入半径;生成一个JButton,并生成该按钮的事件处理程序。
5.计算面积和周长
6.要求有问题数据的异常处理,当文本域中输入非数字的值时,做出处理
二、推荐实现步骤
a.建立窗口
1.构造窗口(使用JFrame),并获取内容窗格(使用getContentPane方法),窗口标题为”计算圆面积”
构造面板,定义边界布局,并将两个面板分别加入到窗口的North
2.在North位置加入两个RadioButton,并将他们加入到ButtonGroup,设置其中一个RadioButton为选中状态
3.在Center位置加入如下组件(1)一个标签的文本设定为”半径”(2)第二个标签文本定为”计算结果” (3)建立一个文本域组件,用于用户输入半径数值(4)一个按钮组件,按钮上的文本为”计算”,用于启动计算
本人跪求代码,谢谢!! 展开
展开全部
// 保存成: CircleCalc.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CircleCalc extends JFrame{
public static void main(String[] args) {
new CircleCalc().setVisible(true);
}
public CircleCalc(){
super("计算圆面积或周长");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(400,200);
this.getContentPane().setLayout(new BorderLayout());//边界布局
this.north=new JPanel(new FlowLayout());//流式布局
this.getContentPane().add(north,BorderLayout.NORTH);
this.group=new ButtonGroup();
this.area=new JRadioButton("面积",true);
this.circumference=new JRadioButton("周长");
this.group.add(area);
this.group.add(circumference);
this.north.add(area);
this.north.add(circumference);
this.center=new JPanel(new GridLayout(2,2));//网格布局
this.getContentPane().add(center,BorderLayout.CENTER);
this.tip=new JLabel("半径:");
this.result=new JLabel("计算结果:");
this.radius=new JTextField();
this.calc=new JButton("计算");
this.center.add(tip);
this.center.add(radius);
this.center.add(result);
this.center.add(calc);
this.calc.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
try{
double r = Double.parseDouble(radius.getText().trim());
if(area.isSelected())
result.setText("计算结果:"+getArea(r));
else
result.setText("计算结果:"+getCircumference(r));
}catch(Exception ex){
result.setText("你输入的半径有误");
}
}
});
}
//面积
private double getArea(double r){
return r*r*3.14;
}
//周长
private double getCircumference(double r){
return r*2*3.14;
}
private JPanel north,center;
private ButtonGroup group;
private JRadioButton area,circumference;
private JLabel tip,result;
private JTextField radius;
private JButton calc;
}
/*
一、要求:使用Swing设计界面,当在文本框输入半径数值,点击”计算按钮”,在Label框中输出圆面积
圆面积的计算公式采用:圆面积=半径*半径*3.14
圆周长的计算公式采用:圆周长=半径*2*3.14
程序的功能要求如下:
1.窗体JFrame实用边界布局
2.在North部分使用流式布局,在Center位置使用网格布局
3.在North部分,加入ButtonGroup,加入两个无线按钮(RadioButton),并将他们加入ButtonGroup,两个无线按钮分别对应计算面积,和计算圆周两种情况。
4.在Center部分:网络布局,窗口分割为2*2;生成两个标签(JLabel);生成一个文本框(JTextField):用于输入半径;生成一个JButton,并生成该按钮的事件处理程序。
5.计算面积和周长
6.要求有问题数据的异常处理,当文本域中输入非数字的值时,做出处理
二、推荐实现步骤
a.建立窗口
1.构造窗口(使用JFrame),并获取内容窗格(使用getContentPane方法),窗口标题为”计算圆面积”
构造面板,定义边界布局,并将两个面板分别加入到窗口的North
2.在North位置加入两个RadioButton,并将他们加入到ButtonGroup,设置其中一个RadioButton为选中状态
3.在Center位置加入如下组件(1)一个标签的文本设定为”半径”(2)第二个标签文本定为”计算结果” (3)建立一个文本域组件,用于用户输入半径数值(4)一个按钮组件,按钮上的文本为”计算”,用于启动计算
*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CircleCalc extends JFrame{
public static void main(String[] args) {
new CircleCalc().setVisible(true);
}
public CircleCalc(){
super("计算圆面积或周长");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(400,200);
this.getContentPane().setLayout(new BorderLayout());//边界布局
this.north=new JPanel(new FlowLayout());//流式布局
this.getContentPane().add(north,BorderLayout.NORTH);
this.group=new ButtonGroup();
this.area=new JRadioButton("面积",true);
this.circumference=new JRadioButton("周长");
this.group.add(area);
this.group.add(circumference);
this.north.add(area);
this.north.add(circumference);
this.center=new JPanel(new GridLayout(2,2));//网格布局
this.getContentPane().add(center,BorderLayout.CENTER);
this.tip=new JLabel("半径:");
this.result=new JLabel("计算结果:");
this.radius=new JTextField();
this.calc=new JButton("计算");
this.center.add(tip);
this.center.add(radius);
this.center.add(result);
this.center.add(calc);
this.calc.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
try{
double r = Double.parseDouble(radius.getText().trim());
if(area.isSelected())
result.setText("计算结果:"+getArea(r));
else
result.setText("计算结果:"+getCircumference(r));
}catch(Exception ex){
result.setText("你输入的半径有误");
}
}
});
}
//面积
private double getArea(double r){
return r*r*3.14;
}
//周长
private double getCircumference(double r){
return r*2*3.14;
}
private JPanel north,center;
private ButtonGroup group;
private JRadioButton area,circumference;
private JLabel tip,result;
private JTextField radius;
private JButton calc;
}
/*
一、要求:使用Swing设计界面,当在文本框输入半径数值,点击”计算按钮”,在Label框中输出圆面积
圆面积的计算公式采用:圆面积=半径*半径*3.14
圆周长的计算公式采用:圆周长=半径*2*3.14
程序的功能要求如下:
1.窗体JFrame实用边界布局
2.在North部分使用流式布局,在Center位置使用网格布局
3.在North部分,加入ButtonGroup,加入两个无线按钮(RadioButton),并将他们加入ButtonGroup,两个无线按钮分别对应计算面积,和计算圆周两种情况。
4.在Center部分:网络布局,窗口分割为2*2;生成两个标签(JLabel);生成一个文本框(JTextField):用于输入半径;生成一个JButton,并生成该按钮的事件处理程序。
5.计算面积和周长
6.要求有问题数据的异常处理,当文本域中输入非数字的值时,做出处理
二、推荐实现步骤
a.建立窗口
1.构造窗口(使用JFrame),并获取内容窗格(使用getContentPane方法),窗口标题为”计算圆面积”
构造面板,定义边界布局,并将两个面板分别加入到窗口的North
2.在North位置加入两个RadioButton,并将他们加入到ButtonGroup,设置其中一个RadioButton为选中状态
3.在Center位置加入如下组件(1)一个标签的文本设定为”半径”(2)第二个标签文本定为”计算结果” (3)建立一个文本域组件,用于用户输入半径数值(4)一个按钮组件,按钮上的文本为”计算”,用于启动计算
*/
展开全部
package LOVO;
import java.awt.Container;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class MyMath extends JFrame{
Container cont;
JButton jb;
JTextField jtf1;
JTextField jtf2;
JRadioButton jrb1;
JRadioButton jrb2;
public void init(){
this.setSize(300,300);
this.setTitle("求圆的面积和周长");
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setResizable(false);
this.setLocationRelativeTo(null);
cont=this.getContentPane();
cont.setLayout(null);
}
public void setWin(){
JLabel jl1 = new JLabel("请输入圆的半径");
jl1.setBounds(50,50,100,25);
cont.add(jl1);
jtf1 = new JTextField();
jtf1.setBounds(160,50,100,25);
cont.add(jtf1);
jrb1 = new JRadioButton("计算面积");
jrb1.setBounds(50,110,80,25);
jrb2 = new JRadioButton("计算周长");
jrb2.setBounds(160,110,80,25);
ButtonGroup bg = new ButtonGroup();
bg.add(jrb1);
bg.add(jrb2);
cont.add(jrb1);
cont.add(jrb2);
jb = new JButton("开始计算");
jb.setBounds(100,180,100,25);
jb.addActionListener(new MathFunction(this));
cont.add(jb);
jtf2 = new JTextField();
jtf2.setBounds(70,230,160,25);
cont.add(jtf2);
}
public static void main(String[] args) {
MyMath mm = new MyMath();
mm.init();
mm.setWin();
mm.setVisible(true);
}
}
//上面的是GUI界面
package LOVO;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
public class MathFunction implements ActionListener{
MyMath m1;
public MathFunction(MyMath m1){
this.m1=m1;
}
public void actionPerformed(ActionEvent e) {
final float PAI=(float) 3.14;
String regex ="100|[1-9][0-9]|[0-9]";
if(e.getSource()==m1.jb&&m1.jtf1.getText().matches(regex)){
if(m1.jrb1.isSelected()==true){
float r = Integer.parseInt(m1.jtf1.getText());
float s =r*r*PAI;
m1.jtf2.setText("该圆的面积等于:"+s);
}
if(m1.jrb2.isSelected()==true){
float r = Integer.parseInt(m1.jtf1.getText());
float c = r*2*PAI;
m1.jtf2.setText("该圆的周长等于:"+c);
}
}
else{
JOptionPane.showMessageDialog(null,"输入有误,请重新输入");
m1.jtf1.setText("");
}
}
}
//事件
我是用null布局做的...用正则表达式控制了半径长度为1-100,不包括小数.如果想改的话自己,修改下正则表达式.
import java.awt.Container;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class MyMath extends JFrame{
Container cont;
JButton jb;
JTextField jtf1;
JTextField jtf2;
JRadioButton jrb1;
JRadioButton jrb2;
public void init(){
this.setSize(300,300);
this.setTitle("求圆的面积和周长");
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setResizable(false);
this.setLocationRelativeTo(null);
cont=this.getContentPane();
cont.setLayout(null);
}
public void setWin(){
JLabel jl1 = new JLabel("请输入圆的半径");
jl1.setBounds(50,50,100,25);
cont.add(jl1);
jtf1 = new JTextField();
jtf1.setBounds(160,50,100,25);
cont.add(jtf1);
jrb1 = new JRadioButton("计算面积");
jrb1.setBounds(50,110,80,25);
jrb2 = new JRadioButton("计算周长");
jrb2.setBounds(160,110,80,25);
ButtonGroup bg = new ButtonGroup();
bg.add(jrb1);
bg.add(jrb2);
cont.add(jrb1);
cont.add(jrb2);
jb = new JButton("开始计算");
jb.setBounds(100,180,100,25);
jb.addActionListener(new MathFunction(this));
cont.add(jb);
jtf2 = new JTextField();
jtf2.setBounds(70,230,160,25);
cont.add(jtf2);
}
public static void main(String[] args) {
MyMath mm = new MyMath();
mm.init();
mm.setWin();
mm.setVisible(true);
}
}
//上面的是GUI界面
package LOVO;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
public class MathFunction implements ActionListener{
MyMath m1;
public MathFunction(MyMath m1){
this.m1=m1;
}
public void actionPerformed(ActionEvent e) {
final float PAI=(float) 3.14;
String regex ="100|[1-9][0-9]|[0-9]";
if(e.getSource()==m1.jb&&m1.jtf1.getText().matches(regex)){
if(m1.jrb1.isSelected()==true){
float r = Integer.parseInt(m1.jtf1.getText());
float s =r*r*PAI;
m1.jtf2.setText("该圆的面积等于:"+s);
}
if(m1.jrb2.isSelected()==true){
float r = Integer.parseInt(m1.jtf1.getText());
float c = r*2*PAI;
m1.jtf2.setText("该圆的周长等于:"+c);
}
}
else{
JOptionPane.showMessageDialog(null,"输入有误,请重新输入");
m1.jtf1.setText("");
}
}
}
//事件
我是用null布局做的...用正则表达式控制了半径长度为1-100,不包括小数.如果想改的话自己,修改下正则表达式.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
额~我当年的期末设计~那苦头我是吃过的~
所以...
我坚决不帮你做~哈哈~
所以...
我坚决不帮你做~哈哈~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询