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

📄 chooseclothespanel.java

📁 一个优秀的干洗店管理系统
💻 JAVA
字号:
package view.panel.getClothes;

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.util.Iterator;
import java.util.Vector;

import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;

import vo.ClothesTypeVo;
import control.getClothes.ClothesTypeCaretListener;
import dao.clothesTypeDao.ClothesTypeDao;
import dao.clothesTypeDao.clothesTypeDaoImpl.ClothesTypeDaoImpl;
import dao.common.DbException;

public class ChooseClothesPanel extends JPanel {
	private JTextField keywordTxFld;
	private JRadioButton clothesNameRdBtn, serviceTypeRdBtn;
	private JButton searchBtn;

	private String tableHeaders[] = { "衣服编号", "衣服名称", "服务类型", "单价", "最低折扣" };

	private JTable clothesTable;

	private JButton okBtn, cancelBtn;

	public ChooseClothesPanel() {
		this.setLayout(new BorderLayout());
		this.add(buildSearchPanel(), BorderLayout.NORTH);
		this.add(buildClothesTableScrollPane(), BorderLayout.CENTER);
		this.add(buildClothesChooseBtnPanel(), BorderLayout.SOUTH);
		initialize();
	}

	public void initialize() {
		ClothesTypeDao clothesTypeDao = new ClothesTypeDaoImpl();
		try {
			Vector clothesTypeVector = clothesTypeDao.getClothesType();
			setClothesTypeTable(clothesTypeVector);
		} catch (DbException e) {
			JOptionPane.showMessageDialog(null, e.getMessage(), "信息",
					JOptionPane.YES_OPTION);
		}
	}

	public JPanel buildSearchPanel() {
		JPanel panel = new JPanel();
		panel.add(buildlabelAndTxFldPanel());
		panel.add(buildRadioBtnPanel());
		panel.add(buildSearchBtn());
		return panel;
	}

	public JPanel buildlabelAndTxFldPanel() {
		JPanel panel = new JPanel();
		panel.setLayout(new GridLayout(1, 2));
		panel.add(new JLabel("搜素关键字:"));
		panel.add(buildKeywordTxFld());
		return panel;
	}

	public JTextField buildKeywordTxFld() {
		if (keywordTxFld == null) {
			keywordTxFld = new JTextField();
		}
		return keywordTxFld;
	}

	public JPanel buildRadioBtnPanel() {
		JPanel panel = new JPanel();
		panel.setLayout(new GridLayout(2, 1));
		ButtonGroup group = new ButtonGroup();
		JRadioButton NameRdBtn = buildClothesNameRdBtn();
		JRadioButton TypeRdBtn = buildServiceTypeRdBtn();
		group.add(NameRdBtn);
		group.add(TypeRdBtn);
		panel.add(NameRdBtn);
		panel.add(TypeRdBtn);
		return panel;
	}

	public JRadioButton buildClothesNameRdBtn() {
		if (clothesNameRdBtn == null) {
			clothesNameRdBtn = new JRadioButton("按衣服名称搜素");
		}
		return clothesNameRdBtn;
	}

	public JRadioButton buildServiceTypeRdBtn() {
		if (serviceTypeRdBtn == null) {
			serviceTypeRdBtn = new JRadioButton("按服务类型搜素");
		}
		return serviceTypeRdBtn;
	}

	public JButton buildSearchBtn() {
		if (searchBtn == null) {
			searchBtn = new JButton("搜素");
			searchBtn.setToolTipText("当按键字内容为空时,将搜索处所有衣服类型");
		}
		return searchBtn;
	}

	public JLabel buildLabel(String content) {
		return new JLabel(content);
	}

	public JScrollPane buildClothesTableScrollPane() {
		JScrollPane clothesTableScrollPane = new JScrollPane(
				buildClothesTable());
		return clothesTableScrollPane;
	}

	public JTable buildClothesTable() {
		if (clothesTable == null) {
			Object[][] data = {};
			DefaultTableModel tableModel = new DefaultTableModel(data,
					tableHeaders) {
				public boolean isCellEditable(int rowIndex, int columnIndex) {
					return false;
				}
			};
			clothesTable = new JTable(tableModel);
		}
		return clothesTable;
	}

	public JPanel buildClothesChooseBtnPanel() {
		JPanel clothesChooseBtnPanel = new JPanel();
		clothesChooseBtnPanel.setLayout(new FlowLayout());
		clothesChooseBtnPanel.add(buildOkBtn());
		clothesChooseBtnPanel.add(buildCancelBtn());
		return clothesChooseBtnPanel;
	}

	public JButton buildOkBtn() {
		if (okBtn == null) {
			okBtn = new JButton("确定");
		}
		return okBtn;
	}

	public JButton buildCancelBtn() {
		if (cancelBtn == null) {
			cancelBtn = new JButton("取消");
		}
		return cancelBtn;
	}

	public ClothesTypeVo getSelectedClothesTypeVo() {
		int row = clothesTable.getSelectedRow();
		if (row < 0) {
			JOptionPane.showMessageDialog(null, "请选择你要添加的衣服类型", "提示",
					JOptionPane.YES_OPTION);
			return null;
		}
		DefaultTableModel tableModel = (DefaultTableModel) this.clothesTable
				.getModel();
		int clothesId = Integer.parseInt(tableModel.getValueAt(row, 0)
				.toString());
		String clothesName = tableModel.getValueAt(row, 1).toString();
		String serviceType = tableModel.getValueAt(row, 2).toString();
		double unitOriginalPrice = Double.parseDouble(tableModel.getValueAt(
				row, 3).toString());
		double lowestDiscount = Double.parseDouble(tableModel
				.getValueAt(row, 4).toString());
		;
		return new ClothesTypeVo(clothesId, clothesName, serviceType,
				unitOriginalPrice, lowestDiscount, null, null);
	}

	public void setClothesTypeTable(Vector clothesTypeVector) {
		JTable table = this.buildClothesTable();
		int rowCount = table.getRowCount();
		DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
		while (rowCount > 0) {
			tableModel.removeRow(0);
			rowCount--;
		}
		if (clothesTypeVector == null) {
			return;
		}
		Iterator it = clothesTypeVector.iterator();
		while (it.hasNext()) {
			ClothesTypeVo vo = (ClothesTypeVo) it.next();
			Object[] content = { Integer.toString(vo.getClothesId()),
					vo.getClothesName(), vo.getServiceType(),
					Double.toString(vo.getUnitOriginalPrice()),
					Double.toString(vo.getLowestDiscount()) };
			tableModel.addRow(content);
		}
	}
}

⌨️ 快捷键说明

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