亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? criterionsetpanel.java

?? JAVA開發(fā)的企業(yè)人事管理系統(tǒng),含有詳細(xì)的開發(fā)文檔,可做畢業(yè)設(shè)計(jì).
?? JAVA
?? 第 1 頁 / 共 2 頁
字號(hào):
								JOptionPane.INFORMATION_MESSAGE);
					}
				}
			}
		});
		delItemButton.setText("刪除項(xiàng)目");
		buttonPanel.add(delItemButton);

		final JButton updateMoneyButton = new JButton();
		updateMoneyButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				int leftSelectedRow = leftTable.getSelectedRow();// 獲得選中的賬套
				if (needSaveRow == -1 || needSaveRow == leftSelectedRow) {
					int rightSelectedRow = rightTable.getSelectedRow();
					if (rightSelectedRow == -1) {
						JOptionPane.showMessageDialog(null, "現(xiàn)在已經(jīng)沒有任何項(xiàng)目信息!",
								"友情提示", JOptionPane.INFORMATION_MESSAGE);
						return;
					} else {
						updateItemMoney(leftSelectedRow, rightSelectedRow);
					}
				} else {
					JOptionPane.showMessageDialog(null, "請(qǐng)先保存賬套: "
							+ leftTable.getValueAt(needSaveRow, 1), "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
				}
			}
		});
		updateMoneyButton.setText("修改金額");
		buttonPanel.add(updateMoneyButton);

		final JLabel rightLabel = new JLabel();
		rightLabel.setPreferredSize(new Dimension(20, 20));
		buttonPanel.add(rightLabel);

		final JButton saveButton = new JButton();
		saveButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				if (needSaveRow == -1) {
					JOptionPane.showMessageDialog(null, "當(dāng)前沒有需要保存的賬套!", "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
					return;
				} else {
					leftTable.setRowSelectionInterval(needSaveRow, needSaveRow);
					int rowCount = rightTable.getRowCount();
					if (rowCount == 0) {
						JOptionPane.showMessageDialog(null, "請(qǐng)為賬套“"
								+ leftTable.getValueAt(needSaveRow, 1)
								+ "”添加項(xiàng)目!", "友情提示",
								JOptionPane.INFORMATION_MESSAGE);
						addItem(needSaveRow);
						return;
					} else {
						for (int i = 0; i < rowCount; i++) {
							if (rightTable.getValueAt(i, 4).equals("0")) {
								String info = "請(qǐng)為賬套“"
										+ leftTable.getValueAt(needSaveRow, 1)
										+ "”中的項(xiàng)目“"
										+ rightTable.getValueAt(i, 1) + "”填寫“"
										+ rightTable.getValueAt(i, 3) + "”金額!";
								JOptionPane
										.showMessageDialog(null, info, "友情提示",
												JOptionPane.INFORMATION_MESSAGE);
								rightTable.setRowSelectionInterval(i, i);
								updateItemMoney(needSaveRow, i);
								return;
							}
						}
					}
					dao.saveOrUpdateObject(reckoningV.get(needSaveRow));
					HibernateSessionFactory.closeSession();
					//
					JOptionPane.showMessageDialog(null, "已經(jīng)成功保存賬套: "
							+ leftTable.getValueAt(needSaveRow, 1) + "!",
							"友情提示", JOptionPane.INFORMATION_MESSAGE);
					needSaveRow = -1;
				}
			}
		});
		saveButton.setText("保存");
		buttonPanel.add(saveButton);

		final JSplitPane splitPane = new JSplitPane();
		splitPane.setDividerLocation(300);
		add(splitPane);

		final JScrollPane leftScrollPane = new JScrollPane();
		splitPane.setLeftComponent(leftScrollPane);
		leftScrollPane.setPreferredSize(new Dimension(240, 0));

		leftTableColumnV.add("序號(hào)");
		leftTableColumnV.add("賬套名稱");

		leftTable = new MTable(leftTableModel);
		leftTable.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				int selectedRow = leftTable.getSelectedRow();
				if (selectedRow != lastSelectedRow) {
					lastSelectedRow = selectedRow;
					refreshItemAllRowValueV(selectedRow);
				}
			}
		});
		leftTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		leftScrollPane.setViewportView(leftTable);

		final JScrollPane rightScrollPane = new JScrollPane();
		splitPane.setRightComponent(rightScrollPane);

		rightTableColumnV.add("序號(hào)");
		rightTableColumnV.add("項(xiàng)目名稱");
		rightTableColumnV.add("項(xiàng)目單位");
		rightTableColumnV.add("項(xiàng)目類型");
		rightTableColumnV.add("金額");

		rightTable = new MTable(rightTableModel);
		rightTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		rightScrollPane.setViewportView(rightTable);

		final JPanel explainPanel = new JPanel();
		add(explainPanel, BorderLayout.SOUTH);
		explainPanel.setLayout(new GridBagLayout());
		explainPanel.setBorder(new TitledBorder(null, "",
				TitledBorder.DEFAULT_JUSTIFICATION,
				TitledBorder.DEFAULT_POSITION, null, null));
		explainPanel.setBackground(Color.WHITE);

		final JLabel explainLabel = new JLabel();
		explainLabel.setText("賬套說明:");
		final GridBagConstraints gridBagConstraints = new GridBagConstraints();
		gridBagConstraints.insets = new Insets(0, 0, 60, 0);
		gridBagConstraints.gridx = 0;
		gridBagConstraints.gridy = 0;
		explainPanel.add(explainLabel, gridBagConstraints);

		final JScrollPane explainScrollPane = new JScrollPane();
		explainScrollPane.setPreferredSize(new Dimension(766, 80));
		final GridBagConstraints gridBagConstraints_1 = new GridBagConstraints();
		gridBagConstraints_1.gridx = 1;
		gridBagConstraints_1.gridy = 0;
		explainPanel.add(explainScrollPane, gridBagConstraints_1);

		textArea = new JTextArea();
		textArea.setText(reckoningExplain);
		textArea.setEditable(false);
		textArea.setLineWrap(true);
		explainScrollPane.setViewportView(textArea);
		//
		Iterator reckoningIt = dao.queryReckoning().iterator();
		int reckoningNum = 1;
		while (reckoningIt.hasNext()) {
			TbReckoning reckoning = (TbReckoning) reckoningIt.next();
			reckoningV.add(reckoning);
			Vector<String> rowValueV = new Vector<String>();
			rowValueV.add(reckoningNum++ + "");
			rowValueV.add(reckoning.getName());
			leftTableValueV.add(rowValueV);
		}
		leftTableModel.setDataVector(leftTableValueV, leftTableColumnV);
		if (leftTable.getRowCount() > 0)
			leftTable.setRowSelectionInterval(0, 0);// 默認(rèn)選中第一行(從a行到b行)

		refreshItemAllRowValueV(0);
		HibernateSessionFactory.closeSession();
	}

	public void refreshItemAllRowValueV(int row) {
		rightTableValueV.removeAllElements();
		if (reckoningV.size() > 0) {
			TbReckoning reckoning = reckoningV.get(row);
			textArea.setText(reckoning.getExplain());
			Iterator<TbReckoningInfo> reckoningInfoIt = reckoning
					.getTbReckoningInfos().iterator();
			int reckoningInfoNum = 1;
			while (reckoningInfoIt.hasNext()) {
				TbReckoningInfo reckoningInfo = reckoningInfoIt.next();
				Vector<String> reckoningInfoV = new Vector<String>();
				reckoningInfoV.add(reckoningInfoNum++ + "");
				reckoningInfoV.add(reckoningInfo.getTbAccountItem().getName());
				reckoningInfoV.add(reckoningInfo.getTbAccountItem().getUnit());
				reckoningInfoV.add(reckoningInfo.getTbAccountItem().getType());
				reckoningInfoV.add(reckoningInfo.getMoney().toString());
				rightTableValueV.add(reckoningInfoV);
			}
		} else {
			textArea.setText("");
		}
		rightTableModel.setDataVector(rightTableValueV, rightTableColumnV);
		if (rightTable.getRowCount() > 0)
			rightTable.setRowSelectionInterval(0, 0);
	}

	public void addItem(int leftSelectedRow) {
		AddAccountItemDialog addAccountItemDialog = new AddAccountItemDialog();
		addAccountItemDialog.setBounds((width - 500) / 2, (height - 375) / 2,
				500, 375);
		addAccountItemDialog.setVisible(true);// 彈出添加項(xiàng)目對(duì)話框
		//
		JTable itemTable = addAccountItemDialog.getTable();// 獲得對(duì)話框中的表格對(duì)象
		int[] selectedRows = itemTable.getSelectedRows();// 獲得選中行的索引
		if (selectedRows.length > 0) {// 有新添加的項(xiàng)目
			needSaveRow = leftSelectedRow;// 設(shè)置當(dāng)前賬套為需要保存的賬套
			int defaultSelectedRow = rightTable.getRowCount();// 將選中行設(shè)置為新添加項(xiàng)目的第一行
			TbReckoning reckoning = reckoningV.get(leftSelectedRow);// 獲得選中賬套的對(duì)象
			for (int i = 0; i < selectedRows.length; i++) {// 通過循環(huán)向賬套中添加項(xiàng)目
				String name = itemTable.getValueAt(selectedRows[i], 1)
						.toString();// 獲得項(xiàng)目名稱
				String unit = itemTable.getValueAt(selectedRows[i], 2)
						.toString();// 獲得項(xiàng)目單位
				Iterator<TbReckoningInfo> reckoningInfoIt = reckoning
						.getTbReckoningInfos().iterator();// 遍歷賬套中的現(xiàn)有項(xiàng)目
				boolean had = false;// 默認(rèn)在現(xiàn)有項(xiàng)目中不包含新添加的項(xiàng)目
				while (reckoningInfoIt.hasNext()) {// 通過循環(huán)查找是否存在
					TbAccountItem accountItem = reckoningInfoIt.next()
							.getTbAccountItem();// 獲得已有的項(xiàng)目對(duì)象
					if (accountItem.getName().equals(name)
							&& accountItem.getUnit().equals(unit)) {
						had = true;// 存在
						break;// 跳出循環(huán)
					}
				}
				if (!had) {// 如果沒有則添加
					TbReckoningInfo reckoningInfo = new TbReckoningInfo();// 創(chuàng)建賬套信息對(duì)象
					TbAccountItem accountItem = (TbAccountItem) dao
							.queryAccountItemByNameUnit(name, unit);// 獲得賬套項(xiàng)目對(duì)象
					accountItem.getTbReckoningInfos().add(reckoningInfo);// 建立從賬套項(xiàng)目對(duì)象到賬套信息對(duì)象的關(guān)聯(lián)
					reckoningInfo.setTbAccountItem(accountItem);// 建立從賬套信息對(duì)象到賬套項(xiàng)目對(duì)象的關(guān)聯(lián)
					reckoningInfo.setMoney(0);// 設(shè)置項(xiàng)目金額為0
					reckoningInfo.setTbReckoning(reckoning);// 建立從賬套信息對(duì)象到賬套對(duì)象的關(guān)聯(lián)
					reckoning.getTbReckoningInfos().add(reckoningInfo);// 建立從賬套對(duì)象到賬套信息對(duì)象的關(guān)聯(lián)
				}
			}
			refreshItemAllRowValueV(leftSelectedRow);// 同步刷新右側(cè)的賬套項(xiàng)目表格
			rightTable.setRowSelectionInterval(defaultSelectedRow,
					defaultSelectedRow);// 設(shè)置新添加項(xiàng)目的第一行為選中行
			addAccountItemDialog.dispose();// 銷毀添加項(xiàng)目對(duì)話框
		}
	}

	public void updateItemMoney(int leftSelectedRow, int rightSelectedRow) {
		String money = null;
		done: while (true) {
			money = JOptionPane.showInputDialog(null, "請(qǐng)?zhí)顚?quot;
					+ rightTable.getValueAt(rightSelectedRow, 1) + "的"
					+ rightTable.getValueAt(rightSelectedRow, 3).toString().trim() + "金額:",
					"修改金額", JOptionPane.INFORMATION_MESSAGE);
			if (money == null) {// 用戶單擊“取消”按鈕
				break done;// 取消修改
			} else {// 用戶單擊“確定”按鈕
				if (money.equals("")) {// 未輸入金額,彈出提示對(duì)話框
					JOptionPane.showMessageDialog(null, "請(qǐng)輸入金額!", "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
				} else {// 輸入了金額
					Pattern pattern = Pattern.compile("[1-9][0-9]{0,5}");// 金額必須在1——999999之間
					Matcher matcher = pattern.matcher(money);// 通過正則表達(dá)式判斷是否符合要求
					if (matcher.matches()) {// 符合要求
						needSaveRow = leftSelectedRow;// 設(shè)置當(dāng)前賬套為需要保存的賬套
						rightTable.setValueAt(money, rightSelectedRow, 4);// 修改項(xiàng)目金額
						int nextSelectedRow = rightSelectedRow + 1;// 默認(rèn)存在下一行
						if (nextSelectedRow < rightTable.getRowCount()) {// 存在下一行
							rightTable.setRowSelectionInterval(nextSelectedRow,
									nextSelectedRow);
						}
						//
						String name = rightTable
								.getValueAt(rightSelectedRow, 1).toString();// 獲得項(xiàng)目名稱
						String unit = rightTable
								.getValueAt(rightSelectedRow, 2).toString();// 獲得項(xiàng)目單位
						TbReckoning reckoning = reckoningV.get(leftSelectedRow);// 獲得選中賬套的對(duì)象
						Iterator reckoningInfoIt = reckoning
								.getTbReckoningInfos().iterator();// 遍歷項(xiàng)目
						while (reckoningInfoIt.hasNext()) {// 通過循環(huán)查找選中項(xiàng)目
							TbReckoningInfo reckoningInfo = (TbReckoningInfo) reckoningInfoIt
									.next();
							TbAccountItem accountItem = reckoningInfo
									.getTbAccountItem();
							if (accountItem.getName().equals(name)
									&& accountItem.getUnit().equals(unit)) {
								reckoningInfo.setMoney(new Integer(money));// 修改金額
								break;// 跳出循環(huán)
							}
						}
						break done;// 修改完成
					} else {// 不符合要求,彈出提示對(duì)話框
						String infos[] = { "金額輸入錯(cuò)誤,請(qǐng)重新輸入!",
								"金額必須為0——999999之間的整數(shù)!" };
						JOptionPane.showMessageDialog(null, infos, "友情提示",
								JOptionPane.INFORMATION_MESSAGE);
					}
				}
			}
		}
	}

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩小视频在线观看专区| 91电影在线观看| 国产欧美一区二区三区鸳鸯浴 | 国产精品你懂的| 成人精品一区二区三区四区| 亚洲国产高清不卡| 色一区在线观看| 日韩高清不卡在线| 精品免费99久久| 春色校园综合激情亚洲| 亚洲激情五月婷婷| 欧美一区二区三区成人| 国产一区二区精品在线观看| 国产精品久久久久久久久晋中 | 91在线视频免费观看| 亚洲女人****多毛耸耸8| 91黄视频在线| 久久不见久久见免费视频1| 中文字幕免费不卡| 欧美日本一区二区| 欧美剧情电影在线观看完整版免费励志电影| 国产精品情趣视频| 欧美在线免费播放| 精品一区二区三区免费播放| 亚洲国产精品99久久久久久久久 | 欧美精品精品一区| 国产不卡在线一区| 婷婷成人激情在线网| 久久久99久久精品欧美| 在线欧美一区二区| 国产乱淫av一区二区三区| 亚洲欧美视频一区| 精品日韩一区二区| 91高清在线观看| 经典三级一区二区| 亚洲最色的网站| 国产日韩欧美激情| 欧美另类z0zxhd电影| 国产福利一区在线| 日韩**一区毛片| 综合久久国产九一剧情麻豆| 欧美一区二区免费| 在线精品视频免费观看| 国产高清不卡一区| 麻豆精品视频在线观看免费| 亚洲欧美aⅴ...| 国产无一区二区| 欧美一区二区二区| 欧美日免费三级在线| 成人精品免费网站| 国产一区二区精品久久99| 午夜一区二区三区在线观看| 国产精品久久久久久久久免费相片 | 亚洲视频免费在线观看| 亚洲精品在线一区二区| 欧美日韩在线三区| 色哟哟精品一区| 成+人+亚洲+综合天堂| 韩国精品免费视频| 久久国产精品99精品国产| 亚洲一区二区三区美女| 亚洲精品成人在线| 亚洲免费观看高清完整| 国产精品久久久久久久久免费桃花| 精品乱人伦小说| 精品精品国产高清a毛片牛牛| 欧美一卡在线观看| 制服丝袜亚洲色图| 欧美精品黑人性xxxx| 777午夜精品视频在线播放| 欧美亚洲免费在线一区| 色综合色狠狠天天综合色| 91热门视频在线观看| 99久久国产综合精品女不卡| av资源站一区| 色综合色综合色综合| 91蜜桃免费观看视频| 91影院在线免费观看| 91社区在线播放| 精品视频在线看| 欧美高清视频不卡网| 欧美一区二区三区人| 精品国产一区二区三区av性色| 欧美电影免费观看高清完整版| 精品国产三级a在线观看| 亚洲精品在线一区二区| 国产欧美精品在线观看| 亚洲国产激情av| 亚洲精品欧美专区| 性做久久久久久免费观看| 日本欧美一区二区三区| 国内精品免费在线观看| 高清免费成人av| 色婷婷av一区二区三区软件| 在线观看视频91| 日韩一级片网站| 国产亚洲精品中文字幕| 亚洲私人黄色宅男| 日韩主播视频在线| 国内欧美视频一区二区 | 久久精品国产亚洲a| 高清av一区二区| 在线观看国产日韩| 精品久久免费看| 中文字幕五月欧美| 日韩成人免费看| 大白屁股一区二区视频| 欧美在线短视频| 精品少妇一区二区三区日产乱码| 国产欧美视频在线观看| 一区二区三区蜜桃网| 强制捆绑调教一区二区| 成人精品高清在线| 欧美精品tushy高清| 国产精品久久久一本精品| 亚洲成人av免费| 风间由美性色一区二区三区| 欧美人妇做爰xxxⅹ性高电影| 久久婷婷一区二区三区| 一区二区三区日韩精品视频| 日本成人中文字幕在线视频| av一二三不卡影片| 欧美一级搡bbbb搡bbbb| 国产精品免费av| 美女mm1313爽爽久久久蜜臀| 色88888久久久久久影院按摩| 精品国产一区二区三区四区四| 亚洲在线中文字幕| 国产成人av电影在线| 日韩一区二区三区免费看| 亚洲日本在线视频观看| 国产精品综合一区二区| 欧美三级日韩在线| 自拍偷拍国产亚洲| 国产一二精品视频| 91精品国产91综合久久蜜臀| 亚洲精品国产品国语在线app| 国产精品夜夜爽| 欧美一区二区三区四区在线观看| 亚洲卡通欧美制服中文| 国产**成人网毛片九色| 精品国产一区二区亚洲人成毛片| 亚洲国产精品天堂| 91小视频免费观看| 中文字幕在线不卡| 国产精品一区一区| 精品国产青草久久久久福利| 亚洲国产sm捆绑调教视频 | 日韩一区二区在线看| 亚洲尤物在线视频观看| 99精品桃花视频在线观看| 久久久国产精品不卡| 紧缚奴在线一区二区三区| 日韩欧美中文字幕公布| 蜜臀av一区二区| 日韩亚洲欧美综合| 久久精品国产99国产精品| 日韩午夜激情av| 捆绑紧缚一区二区三区视频| 欧美一区在线视频| 免费欧美高清视频| 日韩免费成人网| 黑人巨大精品欧美黑白配亚洲| 精品国产一区二区在线观看| 看片的网站亚洲| 日韩欧美高清dvd碟片| 久草这里只有精品视频| 精品久久久久99| 韩国欧美一区二区| 久久久噜噜噜久久中文字幕色伊伊| 精品一区二区三区影院在线午夜| 日韩一区二区中文字幕| 久久99精品国产.久久久久久| 精品99一区二区| 国产精品一区2区| 国产精品久久久久久一区二区三区| 成人午夜电影久久影院| 成人欧美一区二区三区| 91在线国内视频| 亚洲成人你懂的| 日韩一区二区免费在线电影| 韩国女主播成人在线观看| 欧美国产乱子伦 | 欧美肥大bbwbbw高潮| 日本成人在线视频网站| 久久久一区二区三区捆绑**| 国产91综合网| 一区二区三区在线高清| 日韩一区二区三区在线视频| 国产乱人伦偷精品视频不卡| 国产精品久久久久久久久动漫| 欧美在线啊v一区| 免费欧美日韩国产三级电影| 国产欧美久久久精品影院| 99视频精品在线| 日韩av午夜在线观看| 国产日产欧美一区| 欧美视频精品在线| 国产曰批免费观看久久久| 亚洲视频在线一区|