**创建一个图书管理系统**
下面将简单的做一个图书管理系统,能够储存图书的信息
首先
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
接下来确定按钮
JFrame frame1, frame2;
TextField tf1, tf2, tf3, tf4, tf5, tf6;
JButton bt_register, bt_reset;
然后编写代码给按钮确定位置和功能
frame1 = new JFrame("图书界面");
frame1.setSize(400, 400);
frame1.setLocation(400, 300);
JPanel panel = new JPanel();
panel.setSize(400, 200);
panel.setBounds(0, 0, 400, 200);
JLabel jlb1 = new JLabel("书名:");
jlb1.setBounds(10, 15, 90, 25);
tf1 = new TextField(30);
tf1.setBounds(100, 15, 165, 25);
JLabel jlb2 = new JLabel("作者:");
jlb2.setBounds(10, 55, 90, 25);
tf2 = new TextField(30);
tf2.setBounds(100, 55, 165, 25);
JLabel jlb3 = new JLabel("价格:");
jlb3.setBounds(10, 95, 90, 25);
tf3 = new TextField(30);
tf3.setBounds(100, 95, 165, 25);
JLabel jlb4 = new JLabel("入库日期:");
jlb4.setBounds(10, 135, 90, 25);
tf4 = new TextField(30);
tf4.setBounds(100, 135, 165, 25);
JLabel jlb5 = new JLabel("出版日期:");
jlb5.setBounds(10, 175, 90, 25);
tf5 = new TextField(30);
tf5.setBounds(100, 175, 165, 25);
JLabel jlb6 = new JLabel("简介:");
jlb6.setBounds(10, 215, 90, 25);
tf6 = new TextField(30);
tf6.setBounds(100, 245, 165, 25);
panel.add(jlb1);
panel.add(jlb2);
panel.add(jlb3);
panel.add(jlb4);
panel.add(jlb5);
panel.add(jlb6);
panel.add(tf2);
panel.add(tf1);
panel.add(tf3);
panel.add(tf4);
panel.add(tf5);
panel.add(tf6);
panel.setLayout(null);
JPanel panel1 = new JPanel();
panel1.setSize(400, 100);
panel1.setBounds(0, 200, 400, 100);
bt_register = new JButton("注册");
bt_register.setBounds(80, 50, 20, 10);
bt_register.addActionListener(new ActionListener()
再然后重写 编辑注册和退出按钮的功能
@Override
public void actionPerformed(ActionEvent e) {
frame1.setVisible(false);
frame2 = new JFrame("图书信息");
frame2.setSize(400, 300);
frame2.setLocation(400, 300);
Object[] columns = {"1","2"};//字段
Object[][] data = {{tf1.getText(), null}, {tf2.getText(), null},
{tf3.getText(), null}, {tf4.getText(), null},
{tf5.getText(), null}, {tf6.getText(), null}};//需要展示的数据,一般是二维数组
DefaultTableModel model = new DefaultTableModel(data, columns);
JTable table = new JTable(model);
frame2.add(table);
frame2.setVisible(true);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
});
bt_reset = new JButton("取消");
bt_reset.setBounds(200, 50, 20, 10);
bt_reset.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("111 ");
tf1.setText(" ");
tf2.setText(" ");
tf3.setText(" ");
tf4.setText(" ");
tf5.setText(" ");
tf6.setText(" ");
}
});
panel1.add(bt_register);
panel1.add(bt_reset);
frame1.add(panel);
frame1.add(panel1);
frame1.setLayout(null);
frame1.setVisible(true);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
下面是完整的代码
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Library {
JFrame frame1, frame2;
TextField tf1, tf2, tf3, tf4, tf5, tf6;
JButton bt_register, bt_reset;
public Library() {
frame1 = new JFrame("图书界面");
frame1.setSize(400, 400);
frame1.setLocation(400, 300);
JPanel panel = new JPanel();
panel.setSize(400, 200);
panel.setBounds(0, 0, 400, 200);
JLabel jlb1 = new JLabel("书名:");
jlb1.setBounds(10, 15, 90, 25);
tf1 = new TextField(30);
tf1.setBounds(100, 15, 165, 25);
JLabel jlb2 = new JLabel("作者:");
jlb2.setBounds(10, 55, 90, 25);
tf2 = new TextField(30);
tf2.setBounds(100, 55, 165, 25);
JLabel jlb3 = new JLabel("价格:");
jlb3.setBounds(10, 95, 90, 25);
tf3 = new TextField(30);
tf3.setBounds(100, 95, 165, 25);
JLabel jlb4 = new JLabel("入库日期:");
jlb4.setBounds(10, 135, 90, 25);
tf4 = new TextField(30);
tf4.setBounds(100, 135, 165, 25);
JLabel jlb5 = new JLabel("出版日期:");
jlb5.setBounds(10, 175, 90, 25);
tf5 = new TextField(30);
tf5.setBounds(100, 175, 165, 25);
JLabel jlb6 = new JLabel("简介:");
jlb6.setBounds(10, 215, 90, 25);
tf6 = new TextField(30);
tf6.setBounds(100, 245, 165, 25);
panel.add(jlb1);
panel.add(jlb2);
panel.add(jlb3);
panel.add(jlb4);
panel.add(jlb5);
panel.add(jlb6);
panel.add(tf2);
panel.add(tf1);
panel.add(tf3);
panel.add(tf4);
panel.add(tf5);
panel.add(tf6);
panel.setLayout(null);
JPanel panel1 = new JPanel();
panel1.setSize(400, 100);
panel1.setBounds(0, 200, 400, 100);
bt_register = new JButton("注册");
bt_register.setBounds(80, 50, 20, 10);
bt_register.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
frame1.setVisible(false);
frame2 = new JFrame("图书信息");
frame2.setSize(400, 300);
frame2.setLocation(400, 300);
Object[] columns = {"1","2"};//字段
Object[][] data = {{tf1.getText(), null}, {tf2.getText(), null},
{tf3.getText(), null}, {tf4.getText(), null},
{tf5.getText(), null}, {tf6.getText(), null}};//需要展示的数据,一般是二维数组
DefaultTableModel model = new DefaultTableModel(data, columns);
JTable table = new JTable(model);
frame2.add(table);
frame2.setVisible(true);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
});
bt_reset = new JButton("取消");
bt_reset.setBounds(200, 50, 20, 10);
bt_reset.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("111 ");
tf1.setText(" ");
tf2.setText(" ");
tf3.setText(" ");
tf4.setText(" ");
tf5.setText(" ");
tf6.setText(" ");
}
});
panel1.add(bt_register);
panel1.add(bt_reset);
frame1.add(panel);
frame1.add(panel1);
frame1.setLayout(null);
frame1.setVisible(true);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
Library library = new Library();
}
}