📄 savingcaculatordone.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 + -