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

📄 financialmainframe.java

📁 帐务管理软件. 用于管理一个集体中每个人的开支情况.
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		}
		return jSearchDialog;
	}

	/**
	 * This method initializes jContentPane2	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJContentPane2() {
		if (jContentPane2 == null) {
			jLabel1 = new JLabel();
			jLabel1.setBounds(new Rectangle(10, 50, 37, 20));
			jLabel1.setText("地点:");
			jLabel = new JLabel();
			jLabel.setBounds(new Rectangle(10, 10, 37, 20));
			jLabel.setText("日期:");
			jContentPane2 = new JPanel();
			jContentPane2.setLayout(null);
			jContentPane2.add(jLabel, null);
			jContentPane2.add(getJTextField(), null);
			jContentPane2.add(getJButton(), null);
			jContentPane2.add(jLabel1, null);
			jContentPane2.add(getJTextField1(), null);
			jContentPane2.add(getJButton1(), null);
		}
		return jContentPane2;
	}

	/**
	 * This method initializes jTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField() {
		if (jTextField == null) {
			jTextField = new JTextField();
			jTextField.setBounds(new Rectangle(57, 10, 63, 20));
		}
		return jTextField;
	}

	/**
	 * This method initializes jButton	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton() {
		if (jButton == null) {
			jButton = new JButton();
			jButton.setBounds(new Rectangle(129, 10, 70, 20));
			jButton.setText("查询");
			jButton.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					String date = jTextField.getText().trim();
					((BasicTableModel)(jTable.getModel())).removeAllRow();
					double sumOfMoney = 0;
					for(BasicItem item:fProc.itemList){
						if(date.equals(item.getDate())){
							((BasicTableModel)(jTable.getModel())).appendRow(item);
							sumOfMoney = sumOfMoney + item.getMoney();
						}
					}
					jTable.updateUI();
					jTextArea1.setText("日期:" + date + " 消费金额:" + sumOfMoney + "元");
				}
			});
		}
		return jButton;
	}

	/**
	 * This method initializes jTextField1	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField1() {
		if (jTextField1 == null) {
			jTextField1 = new JTextField();
			jTextField1.setBounds(new Rectangle(57, 50, 63, 20));
		}
		return jTextField1;
	}

	/**
	 * This method initializes jButton1	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton1() {
		if (jButton1 == null) {
			jButton1 = new JButton();
			jButton1.setBounds(new Rectangle(129, 50, 70, 20));
			jButton1.setText("查询");
			jButton1.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					String place = jTextField1.getText().trim();
					((BasicTableModel)(jTable.getModel())).removeAllRow();
					double sumOfMoney = 0;
					for(BasicItem item:fProc.itemList){
						if(place.equals(item.getPlace())){
							((BasicTableModel)(jTable.getModel())).appendRow(item);
							sumOfMoney = sumOfMoney + item.getMoney();
						}
					}
					jTable.updateUI();
					jTextArea1.setText("地点:" + place + " 消费金额:" + sumOfMoney + "元");
				}
			});
		}
		return jButton1;
	}

	/**
	 * This method initializes jMenuItem1	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItem1() {
		if (jMenuItem1 == null) {
			jMenuItem1 = new JMenuItem();
			jMenuItem1.setText("查找...");
			jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					getJSearchDialog().setVisible(true);
				}
			});
		}
		return jMenuItem1;
	}

	/**
	 * This method initializes jMenuItem2	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItem2() {
		if (jMenuItem2 == null) {
			jMenuItem2 = new JMenuItem();
			jMenuItem2.setText("输入...");
			jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					getJDialog().setVisible(true);
				}
			});
		}
		return jMenuItem2;
	}

	/**
	 * This method initializes jDialog	
	 * 	
	 * @return javax.swing.JDialog	
	 */
	private JDialog getJDialog() {
		if (jDialog == null) {
			jDialog = new JDialog(this);
			jDialog.setSize(new Dimension(306, 316));
			jDialog.setTitle("输入");
			jDialog.setContentPane(getJContentPane1());
		}
		return jDialog;
	}

	/**
	 * This method initializes jContentPane1	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJContentPane1() {
		if (jContentPane1 == null) {
			jLabel5 = new JLabel();
			jLabel5.setBounds(new Rectangle(156, 57, 38, 18));
			jLabel5.setText("金额:");
			jLabel4 = new JLabel();
			jLabel4.setBounds(new Rectangle(12, 58, 38, 18));
			jLabel4.setText("人数:");
			jLabel3 = new JLabel();
			jLabel3.setBounds(new Rectangle(158, 10, 38, 18));
			jLabel3.setText("地点:");
			jLabel2 = new JLabel();
			jLabel2.setBounds(new Rectangle(12, 10, 38, 18));
			jLabel2.setText("日期:");
			jContentPane1 = new JPanel();
			jContentPane1.setLayout(null);
			jContentPane1.add(jLabel2, null);
			jContentPane1.add(getJTextField2(), null);
			jContentPane1.add(jLabel3, null);
			jContentPane1.add(getJTextField3(), null);
			jContentPane1.add(jLabel4, null);
			jContentPane1.add(getJTextField4(), null);
			jContentPane1.add(jLabel5, null);
			jContentPane1.add(getJTextField5(), null);
			jContentPane1.add(getJScrollPane3(), null);
			jContentPane1.add(getJButton2(), null);
		}
		return jContentPane1;
	}

	/**
	 * This method initializes jTextField2	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField2() {
		if (jTextField2 == null) {
			jTextField2 = new JTextField();
			jTextField2.setBounds(new Rectangle(54, 10, 80, 22));
		}
		return jTextField2;
	}

	/**
	 * This method initializes jTextField3	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField3() {
		if (jTextField3 == null) {
			jTextField3 = new JTextField();
			jTextField3.setBounds(new Rectangle(202, 11, 80, 22));
		}
		return jTextField3;
	}

	/**
	 * This method initializes jTextField4	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField4() {
		if (jTextField4 == null) {
			jTextField4 = new JTextField();
			jTextField4.setBounds(new Rectangle(55, 56, 80, 22));
		}
		return jTextField4;
	}

	/**
	 * This method initializes jTextField5	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField5() {
		if (jTextField5 == null) {
			jTextField5 = new JTextField();
			jTextField5.setBounds(new Rectangle(203, 55, 80, 22));
		}
		return jTextField5;
	}

	/**
	 * This method initializes jPanel1	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJPanel1() {
		if (jPanel1 == null) {
			GridLayout gridLayout = new GridLayout();
			jPanel1 = new JPanel();
			jPanel1.setLayout(gridLayout);
			jCheckBoxs = getJCheckBoxs();
			gridLayout.setColumns(3);
			int row = 0;
			
			if(jCheckBoxs.size()/3.0 == jCheckBoxs.size()/3)
				row = jCheckBoxs.size()/3;
			else
				row = jCheckBoxs.size()/3+1;
			
			gridLayout.setRows(row);
			
			for(JCheckBox cb:jCheckBoxs){
				jPanel1.add(cb,null);
			}
		}

		return jPanel1;
	}

	/**
	 * This method initializes jButton2	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton2() {
		if (jButton2 == null) {
			jButton2 = new JButton();
			jButton2.setBounds(new Rectangle(111, 249, 73, 20));
			jButton2.setText("确定");
			jButton2.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					java.util.List<String> names = new java.util.ArrayList<String>();
					
					for(JCheckBox cb:jCheckBoxs){
						if(cb.isSelected())
							names.add(cb.getText().trim());
					}
					
					String date = jTextField2.getText().trim();
					String place = jTextField3.getText().trim();
					int num = Integer.valueOf(jTextField4.getText().trim());
					double money = Double.valueOf(jTextField5.getText().trim());
					
					for(BasicItem item:fProc.itemList){
						if(date.equals(item.getDate())){
							JOptionPane.showMessageDialog(null,"已有相同日期的记录存在!",
								    "输入错误",JOptionPane.WARNING_MESSAGE);
							return;
						}
					}
					if(num==names.size()){
						((BasicTableModel)(jTable.getModel())).removeAllRow();
						double average = money/num;
						for(String name:names){
							BasicItem item = new BasicItem(date,name,average,place);
							fProc.itemList.add(item);
							((BasicTableModel)(jTable.getModel())).appendRow(item);
						}
						jTable.updateUI();
						jTextArea1.setText("日期:" + date + " 消费金额:" + money);
						jDialog.setVisible(false);
					}
					else{
						JOptionPane.showMessageDialog(null,"输入的人数与复选框选择的人数不一致!",
							    "输入错误",JOptionPane.WARNING_MESSAGE);
					}
				}
			});
		}
		return jButton2;
	}
	
	/**
	 * This method initializes jCheckBoxs	
	 * 	
	 * @return javax.swing.JCheckBox[]	
	 */
	private List<JCheckBox> getJCheckBoxs() {
		if (jCheckBoxs==null) {
			for(String s:fProc.listNames){
				jCheckBoxs.add(new JCheckBox(s));
			}
		}
		return jCheckBoxs;
	}

	/**
	 * This method initializes jMenuItem3	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItem3() {
		if (jMenuItem3 == null) {
			jMenuItem3 = new JMenuItem();
			jMenuItem3.setText("保存");
			jMenuItem3.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					String filePathName = "";
					if(fProc.getFileFullPath().length()!=0)
						filePathName = fProc.getFileFullPath();
					else{
						JFileChooser filech = new JFileChooser();
						int rVal = filech.showSaveDialog(FinancialMainFrame.this);
						if(rVal==JFileChooser.APPROVE_OPTION){
							filePathName = filech.getSelectedFile().getAbsolutePath();
						}
						fProc.setFileFullPath(filePathName);
						updateView();
					}					
					writeToFile(filePathName);
				}
			});
		}
		return jMenuItem3;
	}

	/**
	 * This method initializes jMenuItem4	
	 * 	
	 * @return javax.swing.JMenuItem
	 */
	private JMenuItem getJMenuItem4() {
		if (jMenuItem4 == null) {
			jMenuItem4 = new JMenuItem();
			jMenuItem4.setText("删除");
			jMenuItem4.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					int selectedRow = jTable.getSelectedRow();
					if(selectedRow == -1){
						javax.swing.JOptionPane.showMessageDialog(null, "请选择要删除的记录","删除错误",JOptionPane.WARNING_MESSAGE);
						return;
					}
					int n = JOptionPane.showConfirmDialog(null,"确定要删除选择的项目吗?","删除",JOptionPane.YES_NO_OPTION);
					if(n==0){
						String date = (String)(jTable.getModel().getValueAt(selectedRow, 0));
						String name = (String)(jTable.getModel().getValueAt(selectedRow, 1));
						((BasicTableModel)(jTable.getModel())).removeRow(selectedRow);
						jTable.updateUI();
						for(BasicItem item:fProc.itemList){						
							if(date==item.getDate() && name==item.getName()){
								fProc.itemList.remove(item);
							}
						}
					}
				}
			});
		}
		return jMenuItem4;
	}

	/**
	 * This method initializes jMenuItem5	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItem5() {
		if (jMenuItem5 == null) {
			jMenuItem5 = new JMenuItem();
			jMenuItem5.setText("另存为...");
			jMenuItem5.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {

⌨️ 快捷键说明

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