第4次作业类测试代码+105032014138+牟平

类测试代码的具体要求如下:

  设计三角形完整程序

已经完成的方法是:  String triangle(int a,int b,int c)

现在要求继续增加新的功能:

建立界面,至少包含以下元素,但不限于此:

完成面积的方法:float triangleArea(int a,int b,int c) ,完成周长的方法:int perimeter(int a,int b,int c)

一、类图

二、功能界面

1

2

3

4

5

6

三、代码:

import java.awt.EventQueue;

import java.awt.Color;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.awt.Font;
import javax.swing.UIManager;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JLabel;
public class Jframe {

	 private JFrame jframe;
	    private static TriangleTest text;
	    private JTextField texta;
	    private JTextField textb;
	    private JTextField textc;
	    private JTextField perimeter;
	    private JTextField number;
	    private JTextField outarea;

	    public void Triangle() {

	        jframe = new JFrame();
	        jframe.setForeground(Color.green);
	        jframe.setTitle("欢迎使用三角形管理系统");
	        jframe.setBounds(500, 350, 500, 430);
	        jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	        JPanel jpanel = new JPanel();
	        jpanel.setBounds(50, 50, 400, 280);
	        jframe.getContentPane().add(jpanel, BorderLayout.CENTER);      

	        JLabel input = new JLabel("请输入三角形的三条边:");
	        jpanel.add(input);
	        JPanel jp = new JPanel();
	        jpanel.add(jp);
	        JLabel jpa = new JLabel("a:");
	        jp.add(jpa);
	        texta = new JTextField();
	        jp.add(texta);
	        texta.setColumns(5);

	        JLabel jpb = new JLabel("b:");
	        jp.add(jpb);
	        textb = new JTextField();
	        jp.add(textb);
	        textb.setColumns(5);
	        JLabel jpc = new JLabel("c:");
	        jp.add(jpc);

	        textc = new JTextField();
	        jp.add(textc);
	        textc.setColumns(5);
	        JPanel bto = new JPanel();
	        bto.setSize(600, 90);
	        jpanel.add(bto);

	        final JButton btok = new JButton("OK");
	        bto.add(btok);

	        final JButton btc = new JButton("Cancel");
	        bto.add(btc);
	        JPanel outpanel = new JPanel();
	        jpanel.add(outpanel);

	        JLabel output = new JLabel();
	        output.setText("这个三角形是:");
	        number = new JTextField();
	        number.setFont(new Font("宋体", Font.PLAIN, 15));
	        outpanel.add(number);
	        number.setEditable(false);
	        number.setColumns(18);

	        JPanel jpout = new JPanel();
	        jpanel.add(jpout);
	        JLabel outare = new JLabel();
	        jpout.add(outare);
	        outare.setText("面积为:");

	        outarea = new JTextField();
	        outarea.setEditable(false);
	        jpout.add(outarea);
	        outarea.setColumns(9);

	        JLabel outper = new JLabel();
	        jpout.add(outper);
	        outper.setText("周长为:");

	        perimeter = new JTextField();
	        perimeter.setEditable(false);
	        jpout.add(perimeter);

	        btc.addMouseListener(new MouseAdapter() {
	        public void mouseClicked(MouseEvent event) {
	           Object object = event.getSource();
	              if(object == btc){
	               texta.setText("");
	               textb.setText("");
	               textc.setText("");
	               number.setText("");
	               outarea.setText("");
	               perimeter.setText("");
	                  }
	                }
	            });

	    btok.addMouseListener(new MouseAdapter() {
	    public void mouseClicked(MouseEvent event) {
	      Object object = event.getSource();
	        if(object == btok){
	           int aa,bb,cc;
	           //获取文本
	           String a=texta.getText();
	           String b=textb.getText();
	           String c=textc.getText();
	           //p
	           if(text.IsNotInt(a)&&text.IsNotInt(b)&&text.IsNotInt(c))
	           {
	                aa = Integer.parseInt(a);
	                bb = Integer.parseInt(b);
	                cc = Integer.parseInt(c);
	                //
	                if (!(TriangleTest.triangle(aa, bb, cc)).equals("您输入的边的值不在范围内")&&!(TriangleTest.triangle(aa, bb, cc)).equals("不能构成三角形"))
	                {
	                    String pe=String.valueOf(text.perimeter(aa, bb, cc));
	                    String ar=String.valueOf(text.triangleArea(aa, bb, cc));
	                    String re=TriangleTest.triangle(aa, bb, cc);
	                    perimeter.setText(pe);
	                    outarea.setText(ar);
	                    number.setText(re);
	                }
	                else{
	               //
	                    String result=TriangleTest.triangle(aa, bb, cc);
	                    number.setText(result);
	                    outarea.setText("");
	                    perimeter.setText("");
	                    perimeter.setText("");
	                    }
	          }
	           else{
	             //
	            JOptionPane.showMessageDialog(null, "您的输入有误,请重请输入");
	            new JFrame();
	            texta.setText("");
	            textb.setText("");
	            textc.setText("");
	            number.setText("");
	            outarea.setText("");
	            perimeter.setText("");
	                }
	            }
	        }
	      });
	     }

	    public static void main(String[] args) {
	        text=new TriangleTest();
	        EventQueue.invokeLater(new Runnable() {
	        public void run() {
	            Jframe window = new Jframe();
	            //
	            window.jframe.setVisible(true);
	          }
	       });
	    }
	    public Jframe() {
	        Triangle();
	    }
	}

  

时间: 2024-12-28 00:15:16

第4次作业类测试代码+105032014138+牟平的相关文章

第4次作业类测试代码+101+谢艳敏

类测试代码的具体要求如下: 界面操作说明补充: 点击OK,如果输入有效,进行相应的数值计算:如果数值不满足约束,则弹出错误说明,统一为"输入有误,请重新输入",然后回到初始输入状态. 点击Cancle,表示重置,清空前面的数据,回到初始状态. (2)NextDate函数问题 String  nextdate(int m,int d,int y) 建立界面,至少包含以下元素,但不限于此: 完成上一天方法:String lastDay(int m,int d,int y) ,完成周几的方法

第4次作业类测试代码+105032014166+张珍珍

第4次作业:准备类测试代码 类测试代码的具体要求如下: (1)设计三角形完整程序 已经完成的方法是:  String triangle(int a,int b,int c) 现在要求继续增加新的功能: 建立界面,至少包含以下元素,但不限于此: 完成面积的方法:float triangleArea(int a,int b,int c) ,完成周长的方法:int perimeter(int a,int b,int c) 要求: 1.        画出类图: 2.        完成界面和相应的功能

第4次作业类测试代码+105032014125+洪诗育

类测试代码的具体要求如下: 界面操作说明补充: 点击OK,如果输入有效,进行相应的数值计算:如果数值不满足约束,则弹出错误说明,统一为"输入有误,请重新输入",然后回到初始输入状态. 点击Cancle,表示重置,清空前面的数据,回到初始状态. NextDate函数问题 String  nextdate(int m,int d,int y) 建立界面,至少包含以下元素,但不限于此: 完成上一天方法:String lastDay(int m,int d,int y) ,完成周几的方法:in

第4次作业类测试代码+074+林盼皇

(友情提示:代码部分较多,为了便于测试,项目码源已上传至链接:http://pan.baidu.com/s/1pLscU3T 密码:ug8i)  界面: 1.类图 2.界面和相应的功能. 本次实验是在原来的CalDate日期计算类的基础上,添加了两个方法int weekDay(int m,int d,int y)与String lastDate(int m,int d,int y),此外还编写了GUInterface界面.  a.实现lastDate 1 public String lastDa

第4次作业类测试代码+098+吴超

一.类图 二.代码与界面 简单的分层思想,代码目录如下: 计算日期的业务类操作代码:printDate.java;具体包括如下方法. 2.1  增加计算星期几的方法weekDay(),利用蔡勒(Zeller)公式.即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1: 公式中的符号含义如下,w:星期:c:世纪-1:y:年(两位数):m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1.2月要看作上一年的13.14月来计算,比如2003年1月1日要看作2002年的13月

第4次作业类测试代码+028+刘孝天

一:类图 二:代码:  1:定义接口 1 package jframeTest; 2 /* 3 * @author lxt 4 * @date 2017年5月2日下午4:22:35 5 * @Param 6 */ 7 public interface InteUtil { 8 9 public int perimeter(int a,int b,int c); 10 public float triangleArea(int a,int b,int c); 11 public boolean I

第4次作业类测试代码+085+潘亭

一.类图设计如下 二.界面如下 功能演示 1.输入错误 2.不构成三角形 3.一般三角形 面积默认保留两位小数 4.直角三角形 5.等腰三角形 6.等边三角形 7.cancel演示 防止程序崩溃,默认重置为0 三.代码部分 1.Triangle类 1 package visualTriangle; 2 3 public class Triangle { 4 5 //judge the fields 6 public static boolean Check(int num) 7 { 8 if(n

第5次作业类测试代码+140+阮晨曦

1. 代码链接 http://www.cnblogs.com/chenxxiaol/p/6804119.html 2. 界面设计 3. 等价类测试 分析题目 得出对输入的条件要求为 (1)      整数 (2)      三个数 (3)      1≤a≤100 (4)      1≤b≤100 (5)      1≤c≤100 (6)      a<b+c (7)      b<a+ c (8)      c<a+ b (9)    等腰三角形 (10)   等边三角形 (11) 

第4次作业类测试代码+019+李悦洲

类图: 代码: package swingDesign; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JLabel; import java.awt.Font; import javax.swing.JTextField; import javax.swing.JButton;