?? newbookcheckiframe.java
字號:
package com.lishan.iframe;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.text.SimpleDateFormat;
import java.util.List;
import java.util.Map;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JInternalFrame;
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 com.lishan.JComPz.MapPz;
import com.lishan.dao.Dao;
import com.lishan.model.Operater;
import com.lishan.model.OrderAndBookInfo;
public class newBookCheckIFrame extends JInternalFrame {
private JTextField bookType;
private JTextField orderPrice;
private JTextField zhekou;
private JTable table;
private ButtonGroup buttonGroup = new ButtonGroup();
private JTextField price;
private JTextField operator;
private JTextField orderNumber;
private JTextField ISBN;
private JFormattedTextField orderDate;
private Operater user = BookLoginIFrame.getUser();
JRadioButton radioButton2;
JRadioButton radioButton1;
private String[] columnNames = { "圖書編號", "訂購日期", "訂購數量", "操作員", "是否驗收",
"折扣", "圖書類別", "圖書名稱", "作者", "譯者", "出版社", "出版日期", "圖書價格" };
private Map map = MapPz.getMap();
private Object[][] getFileStates(List list) {
Object[][] results = new Object[list.size()][columnNames.length];
for (int i = 0; i < list.size(); i++) {
OrderAndBookInfo order = (OrderAndBookInfo) list.get(i);
results[i][0] = order.getISBN();
results[i][1] = order.getOrderdate();
results[i][2] = order.getNumber();
results[i][3] = order.getOperator();
String CheckAndAccepts;
if (order.getCheckAndAccept().equals("1"))// 1代表沒有驗收
CheckAndAccepts = "否";
else
CheckAndAccepts = "是";
results[i][4] = CheckAndAccepts;
results[i][5] = order.getZk();
String bookTypes = String.valueOf(MapPz.getMap().get(
order.getTypeId()));
results[i][6] = bookTypes;
results[i][7] = order.getBookname();
results[i][8] = order.getWriter();
results[i][9] = order.getTranlator();
results[i][10] = order.getPublisher();
results[i][11] = order.getDate();
results[i][12] = order.getPrice();
}
return results;
}
/**
* Create the frame
*/
public newBookCheckIFrame() {
super();
setClosable(true);
setIconifiable(true);
setAutoscrolls(true);
setTitle("圖書驗收");
setBounds(100, 100, 700, 420);
final JPanel panel = new JPanel();
getContentPane().add(panel);
final JScrollPane scrollPane = new JScrollPane();
scrollPane.setPreferredSize(new Dimension(680, 180));
panel.add(scrollPane);
final DefaultTableModel model = new DefaultTableModel();
Object[][] results = getFileStates(Dao.selectBookOrder());
model.setDataVector(results, columnNames);
table = new JTable();
table.setModel(model);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);// 關閉列自動變小
scrollPane.setViewportView(table);
table.addMouseListener(new TableListener());// 注冊鼠標點擊表的監聽對象
final JPanel panel_1_1 = new JPanel();
final GridLayout gridLayout = new GridLayout(0, 4);
gridLayout.setVgap(5);
panel_1_1.setLayout(gridLayout);
panel_1_1.setPreferredSize(new Dimension(450, 150));
panel.add(panel_1_1);
final JLabel label_1 = new JLabel();
label_1.setText("訂購日期:");
panel_1_1.add(label_1);
SimpleDateFormat myfmt = new SimpleDateFormat("yyyy-MM-dd");
orderDate = new JFormattedTextField(myfmt.getDateInstance());
orderDate.setValue(new java.util.Date());
orderDate.addKeyListener(new DateListener());// 注冊日期監聽對象
panel_1_1.add(orderDate);
final JLabel label_3 = new JLabel();
label_3.setText("書籍編號:");
panel_1_1.add(label_3);
ISBN = new JTextField();
panel_1_1.add(ISBN);
final JLabel label_4 = new JLabel();
label_4.setText("訂購數量:");
panel_1_1.add(label_4);
orderNumber = new JTextField();
panel_1_1.add(orderNumber);
final JLabel label_5 = new JLabel();
label_5.setText("操作員:");
panel_1_1.add(label_5);
operator = new JTextField(user.getName());
panel_1_1.add(operator);
final JLabel label_6 = new JLabel();
label_6.setText("圖書類別:");
panel_1_1.add(label_6);
bookType = new JTextField();
panel_1_1.add(bookType);
final JLabel label_7 = new JLabel();
label_7.setText("圖書原價格:");
panel_1_1.add(label_7);
price = new JTextField();
panel_1_1.add(price);
final JLabel label_9 = new JLabel();
label_9.setText("是否驗收:");
panel_1_1.add(label_9);
final JPanel panel_1 = new JPanel();
panel_1_1.add(panel_1);
radioButton1 = new JRadioButton();
radioButton1.setSelected(true);
panel_1.add(radioButton1);
buttonGroup.add(radioButton1);
radioButton1.setText("是");
radioButton2 = new JRadioButton();
panel_1.add(radioButton2);
buttonGroup.add(radioButton2);
radioButton2.setText("否");
final JLabel label = new JLabel();
label.setText("折扣:");
panel_1_1.add(label);
zhekou = new JTextField();
panel_1_1.add(zhekou);
final JLabel label_2 = new JLabel();
label_2.setText("訂購價格:");
panel_1_1.add(label_2);
orderPrice = new JTextField();
panel_1_1.add(orderPrice);
setVisible(true);
final JPanel panel_2 = new JPanel();
getContentPane().add(panel_2, BorderLayout.SOUTH);
final JButton buttonCheck = new JButton();
panel_2.add(buttonCheck);
buttonCheck.setText("驗收");
buttonCheck.addActionListener(new CheckActionListener(model));// 注冊點擊確認按鈕事件監聽對象
final JButton buttonExit = new JButton();
panel_2.add(buttonExit);
buttonExit.addActionListener(new CloseActionListener());// 注冊點擊退出按鈕事件監聽對象
buttonExit.setText("退出");
//
}
class TableListener extends MouseAdapter {
public void mouseClicked(final MouseEvent e) {
int selRow = table.getSelectedRow();
ISBN.setText(table.getValueAt(selRow, 0).toString().trim());
orderDate.setText(table.getValueAt(selRow, 1).toString().trim());
orderNumber.setText(table.getValueAt(selRow, 2).toString().trim());
operator.setText(table.getValueAt(selRow, 3).toString().trim());
bookType.setText(table.getValueAt(selRow, 6).toString().trim());
price.setText(table.getValueAt(selRow, 12).toString().trim());
if (table.getValueAt(selRow, 4).toString().trim().equals("否"))// 1代表沒有驗收
radioButton2.setSelected(true);
else
radioButton1.setSelected(true);
zhekou.setText(table.getValueAt(selRow, 5).toString().trim());
orderPrice.setText(Double.valueOf(table.getValueAt(selRow, 12)
.toString().trim())
* Double.valueOf(table.getValueAt(selRow, 5).toString()
.trim()) + "");
}
}
class DateListener extends KeyAdapter {
public void keyTyped(KeyEvent e) {
if (orderDate.getText().isEmpty()) {
JOptionPane.showMessageDialog(null, "時間格式請用\"2007-05-10\"格式");
}
}
}
class CheckActionListener implements ActionListener {
private final DefaultTableModel model;
public CheckActionListener(DefaultTableModel model) {
this.model = model;
}
public void actionPerformed(ActionEvent e) {
if (radioButton2.isSelected()) {
String ISBNs = ISBN.getText();
int i = Dao.updateCheckBookOrder(ISBNs);
if (i == 1) {
JOptionPane.showMessageDialog(null, "驗收成功");
Object[][] results = getFileStates(Dao.selectBookOrder());
model.setDataVector(results, columnNames);
table.setModel(model);
radioButton1.setSelected(true);
}
} else {
JOptionPane
.showMessageDialog(null, "您選擇的圖書已經進行過驗收,請選擇其他圖書進行驗收");
}
}
}
class CloseActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
doDefaultCloseAction();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -