📄 booksearchiframe.java
字号:
package com.lishan.iframe;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import java.util.Map;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;
import com.lishan.JComPz.MapPz;
import com.lishan.dao.Dao;
import com.lishan.model.BookInfo;
public class BookSearchIFrame extends JInternalFrame {
private JTextField textField_1;
private JComboBox comboBox_1;
private JTable table_1, table_2;
private JComboBox choice;
private JTextField textField_2;
private JScrollPane scrollPane, scrollPane_1;
private Map m = MapPz.getMap();
/**
* Create the frame
*/
String booksearch[] = { "编号", "分类", "名称", "作者", "译者", "出版社", "出版日期", "单价" };
private Object[][] getSelect(List list) { // 获取数据库中所有的图书信息
Object[][] o = new Object[list.size()][booksearch.length];
for (int i = 0; i < list.size(); i++) {
BookInfo book = (BookInfo) list.get(i);
o[i][0] = book.getISBN();
String bookTypename = String.valueOf(MapPz.getMap().get(
book.getTypeid()));
o[i][1] = bookTypename;
o[i][2] = book.getBookname();
o[i][3] = book.getWriter();
o[i][4] = book.getTranslator();
o[i][5] = book.getPublisher();
o[i][6] = book.getDate();
o[i][7] = book.getPrice();
}
return o;
}
private Object[] getSelectId(List list) { // 获取所有的图书条形码
Object[] ids = new Object[list.size()];
for (int i = 0; i < list.size(); i++) {
BookInfo book = new BookInfo();
ids[i] = book.getISBN();
}
return ids;
}
public BookSearchIFrame() {
super();
// setMaximizable(true);
setIconifiable(true);
setClosable(true);
setTitle("图书查询");
setBounds(100, 100, 500, 400);
setVisible(true);
final JTabbedPane tabbedPane = new JTabbedPane();// tabbedPane允许用户通过单击具有给定标题和/或图标的选项卡,在一组组件之间进行切换
tabbedPane.setPreferredSize(new Dimension(0, 50));
getContentPane().add(tabbedPane);
final JPanel panel_1 = new JPanel();
panel_1.setLayout(new BorderLayout());
tabbedPane.addTab("条件查询", null, panel_1, null);
final JPanel panel_1_1 = new JPanel();
panel_1_1.setBorder(new TitledBorder(null, "请选择查询项目", // 设置边框,此边框嵌套在JPanel中
TitledBorder.DEFAULT_JUSTIFICATION,
TitledBorder.DEFAULT_POSITION, null, null));
panel_1_1.setPreferredSize(new Dimension(0, 50));
panel_1.add(panel_1_1, BorderLayout.NORTH);
choice = new JComboBox();
String[] array = { "图书名称", "图书作者" };
for (int i = 0; i < array.length; i++) {
choice.addItem(array[i]);
}
panel_1_1.add(choice);
textField_1 = new JTextField();
textField_1.setColumns(20);
panel_1_1.add(textField_1);
final JPanel panel = new JPanel();
panel.setBorder(new TitledBorder(null, "查询结果显示",//设置边框,此边框嵌套在JPanel中
TitledBorder.DEFAULT_JUSTIFICATION,
TitledBorder.DEFAULT_POSITION, null, null));
panel_1.add(panel);
scrollPane_1 = new JScrollPane();
scrollPane_1.setPreferredSize(new Dimension(400, 200));
panel.add(scrollPane_1);
final JPanel panel_2_1 = new JPanel();
panel_2_1.setPreferredSize(new Dimension(0, 50));
panel_1.add(panel_2_1, BorderLayout.SOUTH);
final JButton button = new JButton();
button.setText("查询");
panel_2_1.add(button);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
String name = (String) choice.getSelectedItem();
if (name.equals("图书名称")) {
Object[][] results = getSelect(Dao
.selectbookmohu(textField_1.getText()));
if(results.length == 0){
JOptionPane.showMessageDialog(null,"书库中没有包含你说要检索的图书");
}else{
table_2 = new JTable(results, booksearch);
table_2.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
scrollPane_1.setViewportView(table_2);
}
} else if (name.equals("图书作者")) {
Object[][] results = getSelect(Dao
.selectbookmohuwriter(textField_1.getText()));
if(results.length == 0){
JOptionPane.showMessageDialog(null,"书库中没有包含你说要检索的图书");
}else{
table_2 = new JTable(results, booksearch);
table_2.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
scrollPane_1.setViewportView(table_2);
}
}
}
});
final JButton button_1 = new JButton();
button_1.setText("退出");
panel_2_1.add(button_1);
button_1.addActionListener(new CloseActionListener());
setVisible(true);
final JPanel panel_2 = new JPanel();
tabbedPane.addTab("显示图书全部信息", null, panel_2, null);
scrollPane = new JScrollPane();
scrollPane.setPreferredSize(new Dimension(450, 250));
panel_2.add(scrollPane);
Object[][] results = getSelect(Dao.selectbooksearch()); // 返回数据库中所有的图书
String[] booksearch = { "编号", "分类", "名称", "作者", "译者", "出版社", "出版日期",
"单价" };
table_1 = new JTable(results, booksearch);
table_1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
scrollPane.setViewportView(table_1);
}
class CloseActionListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
doDefaultCloseAction();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -