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