⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 savingcaculatordone.java

📁 Java 的计算器
💻 JAVA
字号:
/* * SavingCaculatorDone.java * * Created on 2008年11月11日, 下午7:14 */package savingcaculator;/** * * @author  Administrator */public class SavingCaculatorDone extends javax.swing.JFrame {    /** Creates new form SavingCaculatorDone */    public SavingCaculatorDone() {        initComponents();    }    /** This method is called from within the constructor to     * initialize the form.     * WARNING: Do NOT modify this code. The content of this method is     * always regenerated by the Form Editor.     */    @SuppressWarnings("unchecked")    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents    private void initComponents() {        jLabel1 = new javax.swing.JLabel();        jLabel2 = new javax.swing.JLabel();        jLabel3 = new javax.swing.JLabel();        jLabel4 = new javax.swing.JLabel();        jLabel5 = new javax.swing.JLabel();        BtnCalc = new javax.swing.JButton();        BtnExit = new javax.swing.JButton();        BtnNext = new javax.swing.JButton();        txtCustomer = new javax.swing.JTextField();        txtStartAmt = new javax.swing.JTextField();        cboRate = new javax.swing.JComboBox();        jScrollPane1 = new javax.swing.JScrollPane();        lstNoYears = new javax.swing.JList();        jScrollPane2 = new javax.swing.JScrollPane();        txaDisplay = new javax.swing.JTextArea();        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);        jLabel1.setFont(new java.awt.Font("Algerian", 3, 36));        jLabel1.setForeground(new java.awt.Color(51, 51, 255));        jLabel1.setText("Saving Caculator");        jLabel2.setFont(new java.awt.Font("宋体", 0, 24));        jLabel2.setText("Customer:");        jLabel3.setFont(new java.awt.Font("Tahoma", 1, 14));        jLabel3.setText("Start Amount");        jLabel4.setFont(new java.awt.Font("Tahoma", 1, 14));        jLabel4.setText("Yearly % Rate");        jLabel5.setFont(new java.awt.Font("Tahoma", 1, 14));        jLabel5.setText("No. Years Deposited");        BtnCalc.setBackground(new java.awt.Color(153, 204, 255));        BtnCalc.setFont(new java.awt.Font("Tahoma", 1, 14));        BtnCalc.setText("Calculate Savings");        BtnCalc.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                BtnCalcActionPerformed(evt);            }        });        BtnExit.setBackground(new java.awt.Color(153, 204, 255));        BtnExit.setFont(new java.awt.Font("Tahoma", 1, 14));        BtnExit.setText("Exit");        BtnExit.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                BtnExitActionPerformed(evt);            }        });        BtnNext.setBackground(new java.awt.Color(153, 204, 255));        BtnNext.setFont(new java.awt.Font("Tahoma", 1, 14));        BtnNext.setText("Next Calculation");        BtnNext.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                BtnNextActionPerformed(evt);            }        });        txtStartAmt.setFont(new java.awt.Font("Tahoma", 0, 14));        cboRate.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "0.72", "2.88", "3.24", "3.60" }));        lstNoYears.setModel(new javax.swing.AbstractListModel() {            String[] strings = { "1", "2", "3", "4", "5" };            public int getSize() { return strings.length; }            public Object getElementAt(int i) { return strings[i]; }        });        jScrollPane1.setViewportView(lstNoYears);        txaDisplay.setColumns(20);        txaDisplay.setRows(5);        jScrollPane2.setViewportView(txaDisplay);        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());        getContentPane().setLayout(layout);        layout.setHorizontalGroup(            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)            .addGroup(layout.createSequentialGroup()                .addGap(37, 37, 37)                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)                    .addGroup(layout.createSequentialGroup()                        .addGap(4, 4, 4)                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)                            .addGroup(layout.createSequentialGroup()                                .addComponent(jLabel3)                                .addGap(27, 27, 27)                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)                                    .addComponent(txtCustomer, javax.swing.GroupLayout.Alignment.TRAILING)                                    .addComponent(txtStartAmt, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 126, Short.MAX_VALUE)))                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()                                .addComponent(jLabel4)                                .addGap(18, 18, 18)                                .addComponent(cboRate, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE)                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 8, Short.MAX_VALUE)                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)                                    .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)                                    .addGroup(layout.createSequentialGroup()                                        .addComponent(jLabel5)                                        .addGap(18, 18, 18)                                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 98, javax.swing.GroupLayout.PREFERRED_SIZE))))))                    .addComponent(jLabel1)                    .addComponent(jLabel2)                    .addComponent(BtnNext)                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)                        .addComponent(BtnCalc, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)                        .addComponent(BtnExit, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))                .addGap(46, 46, 46))        );        layout.setVerticalGroup(            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)            .addGroup(layout.createSequentialGroup()                .addGap(53, 53, 53)                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)                    .addGroup(layout.createSequentialGroup()                        .addComponent(jLabel1)                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)                            .addGroup(layout.createSequentialGroup()                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)                                    .addComponent(jLabel2)                                    .addComponent(txtCustomer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))                                .addGap(18, 18, 18)                                .addComponent(jLabel3))                            .addComponent(txtStartAmt, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))                        .addGap(33, 33, 33)                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)                            .addComponent(jLabel4)                            .addComponent(jLabel5)                            .addComponent(cboRate, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()                        .addComponent(BtnCalc)                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)                        .addComponent(BtnNext)                        .addGap(13, 13, 13)                        .addComponent(BtnExit)                        .addGap(34, 34, 34))                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()                        .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 210, Short.MAX_VALUE)                        .addContainerGap())))        );        pack();    }// </editor-fold>//GEN-END:initComponentsprivate void BtnCalcActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BtnCalcActionPerformed// TODO add your handling code here:        double startAmt;        double newAmt;        int noYears;        double rate=0;        double interest=0;        double total = 0;                String output="Years\tstartAmt\tinterest\ttotal"+"\n";                startAmt = Integer.parseInt(txtStartAmt.getText());              //get the rate        switch(cboRate.getSelectedIndex()){            case 0:                rate=0.72;                break;            case 1:                rate=2.88;                break;            case 2:                rate=3.24;                break;            case 3:                rate=3.60;        }                //get the No of years        noYears=lstNoYears.getSelectedIndex()+1;                for(int i=1;i<=noYears;i++){            interest=startAmt*rate/100;            total=startAmt + interest;            output+=String.format("%4d\t%.2f\t%.2f\t%.2f\n",i,startAmt,interest,total);            startAmt = total;                                    }        txaDisplay.setText(output);}//GEN-LAST:event_BtnCalcActionPerformedprivate void BtnNextActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BtnNextActionPerformed// TODO add your handling code here:    txtCustomer.setText("");    txtStartAmt.setText("");    txaDisplay.setText("");}//GEN-LAST:event_BtnNextActionPerformedprivate void BtnExitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BtnExitActionPerformed// TODO add your handling code here:    System.exit(0);}//GEN-LAST:event_BtnExitActionPerformed    /**    * @param args the command line arguments    */    public static void main(String args[]) {        java.awt.EventQueue.invokeLater(new Runnable() {            public void run() {                new SavingCaculatorDone().setVisible(true);            }        });    }    // Variables declaration - do not modify//GEN-BEGIN:variables    private javax.swing.JButton BtnCalc;    private javax.swing.JButton BtnExit;    private javax.swing.JButton BtnNext;    private javax.swing.JComboBox cboRate;    private javax.swing.JLabel jLabel1;    private javax.swing.JLabel jLabel2;    private javax.swing.JLabel jLabel3;    private javax.swing.JLabel jLabel4;    private javax.swing.JLabel jLabel5;    private javax.swing.JScrollPane jScrollPane1;    private javax.swing.JScrollPane jScrollPane2;    private javax.swing.JList lstNoYears;    private javax.swing.JTextArea txaDisplay;    private javax.swing.JTextField txtCustomer;    private javax.swing.JTextField txtStartAmt;    // End of variables declaration//GEN-END:variables}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -