使用MVC结构计算梯形面积

来源:互联网 发布:软件需求调研表 编辑:程序博客网 时间:2024/04/29 05:16
package com.ytu;public class Test {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubWindowTrapezia win=new WindowTrapezia();win.setTitle("使用MVC结构");win.setBounds(100, 100,420,260);}}package com.ytu;import java.awt.*;import javax.swing.*;import java.awt.event.*;public class WindowTrapezia extends JFrame implements ActionListener{    @Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubtry{double a=Double.parseDouble(textA.getText().trim());double b=Double.parseDouble(textB.getText().trim());double c=Double.parseDouble(textC.getText().trim());trapezia .setA(a);trapezia .setB(b);trapezia .setC(c);String area=trapezia .getArea();showArea.append("梯形"+a+","+b+","+c+"的面积:");showArea.append(area+"\n");}catch(Exception ex){showArea.append("\n"+ex+"\n");}}Trapezia trapezia ;JTextArea showArea;JTextField textA,textB,textC;JButton controlButton;WindowTrapezia(){    trapezia=new Trapezia();textA=new JTextField(5);textB=new JTextField(5);textC=new JTextField(5);showArea=new JTextArea();controlButton=new JButton("计算面积");JPanel pNorth=new JPanel();pNorth.add(new JLabel("上底A:"));pNorth.add(textA);pNorth.add(new JLabel("下底B:"));pNorth.add(textB);pNorth.add(new JLabel("高C:"));pNorth.add(textC);pNorth.add(controlButton);controlButton.addActionListener(this);add(pNorth,BorderLayout.NORTH);add(new JScrollPane(showArea),BorderLayout.CENTER);setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}package com.ytu;//梯形public class Trapezia {double sideA,sideB,sideC,area;boolean isTrapezia;public void setA(double a) {// TODO Auto-generated method stubsideA=a;}public void setB(double b) {// TODO Auto-generated method stubsideB=b;}public void setC(double c) {// TODO Auto-generated method stubsideC=c;}public String getArea() {// TODO Auto-generated method stubarea=(sideA+sideB)*sideC/2.0;return String.valueOf(area);     }}

原创粉丝点击