图书管理系统的界面

图书管理系统
用Java写一个图书管理系统的登陆系统和界面,没有连数据库,只是用GUI的各种组件从而做出的一个界面,看起来还不错,都是慢慢琢磨出来的,是对自己学的一个总结,现在看一下效果:
一,登录界面(运行程序后就会出现)
在这里插入图片描述
二,图书管理系统总界面
在这里插入图片描述
三,图书录入界面
在这里插入图片描述
四,借书界面
在这里插入图片描述
只有界面,没连数据库。取消可以返回主界面,其他的按钮需自己做监听器。话不多说,代码:

 package com.creat;

import java.awt.Component;
import java.awt.Font;
import java.awt.event.*;

import javax.swing.*;

public class tushuguan extends JFrame implements ActionListener{

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		LoginDialog dlg = new LoginDialog();
		dlg.setVisible(true);
		
	}
		
	public tushuguan() {
		super();
		setTitle("图书管理信息系统");
		setBounds(400, 300, 600, 400);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		JMenuBar mbar = new JMenuBar();
		 this.setJMenuBar(mbar);
		JMenu m1 = new JMenu("图书管理");
		JMenu m2 = new JMenu("借阅图书");
		JMenu m3= new JMenu("归还图书");
		JMenu m4 = new JMenu("退出登录");
		mbar.add(m1);
		mbar.add(m2);
		mbar.add(m3);
		mbar.add(m4);
		JMenuItem m11 = new JMenuItem("图书录入");
		m1.add(m11);
		JMenuItem m12 = new JMenuItem("查询图书");
		m1.add(m12);
		JMenuItem m13 = new JMenuItem("修改信息");
		m1.add(m13);
		JMenuItem m14 = new JMenuItem("删除信息");
		m1.add(m14);
		JMenuItem m21 = new JMenuItem("借书");
		m2.add(m21);
		JMenuItem m22 = new JMenuItem("查看借阅记录");
		m2.add(m22);
		JMenuItem m31 = new JMenuItem("还书");
		m3.add(m31);
		JMenuItem m32 = new JMenuItem("查看还书记录");
		m3.add(m32);
		m4.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {

				
				
				
			}
		});
		m11.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				inputbook();
			}
		});
		m12.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				querybook();
			}
		});
		m13.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				revisebook();
			}
		});
		m14.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				deletebook();
			}
		});
		m21.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				borrowbook();
			}
		});
		m31.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				returnbook();
			}
		});
	}
	
	void inputbook() {// 录入图书方法
		InputbookDialog isd = new InputbookDialog();
		isd.setVisible(true);
	}
	void querybook() {// 查询图书方法
		querybookDialog imd = new querybookDialog();
		imd.setVisible(true);
	}
	void revisebook() {// 修改图书方法
		revisebookDialog ind = new revisebookDialog();
		ind.setVisible(true);
	}
	void deletebook() {// 删除图书方法
		deletebookDialog ikd = new deletebookDialog();
		ikd.setVisible(true);
	}
	void borrowbook() {// 借阅图书方法
		borrowbookDialog icd = new borrowbookDialog();
		icd.setVisible(true);
	}
	void returnbook() {// 归还图书方法
		returnbookDialog ird = new returnbookDialog();
		ird.setVisible(true);
	}
	

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		
	}
}
	class InputbookDialog extends JDialog {// 录入图书对话框类

		InputbookDialog() {
			setTitle("图书录入");
			setBounds(500, 250, 600, 400);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("书    号");
			jl1.setBounds(20, 50,100, 25);
			add(jl1);
			JTextField jt1 = new JTextField();
			jt1.setBounds(120, 50, 120, 25);
			add(jt1); 
			JLabel jl2 = new JLabel("作    者");
			jl2.setBounds(20, 100, 100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(120, 100, 120, 25);
			add(jt2);
			JLabel jl3 = new JLabel("价    格");
			jl3.setBounds(20, 150, 100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(120, 150, 120, 25);
			add(jt3);
			JLabel jl4 = new JLabel("存放位置");
			jl4.setBounds(20, 200, 100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(120, 200, 120, 25);
			add(jt4);
			JLabel jl5 = new JLabel("书    名");
			jl5.setBounds(300, 50, 100, 25);
			add(jl5);
			JTextField jt5 = new JTextField();
			jt5.setBounds(400, 50, 120, 25);
			add(jt5);
			JLabel jl6 = new JLabel("出 版 社");
			jl6.setBounds(300, 100, 100, 25);
			add(jl6);
			JTextField jt6 = new JTextField();
			jt6.setBounds(400, 100, 120, 25);
			add(jt6);
			JLabel jl7 = new JLabel("出版时间");
			jl7.setBounds(300, 150, 100, 25);
			add(jl7);
			JTextField jt7 = new JTextField();
			jt7.setBounds(400, 150, 120, 25);
			add(jt7);
			JLabel jl8 = new JLabel("数    量");
			jl8.setBounds(300, 200, 100, 25);
			add(jl8);
			JTextField jt8 = new JTextField();
			jt8.setBounds(400, 200, 120, 25);
			add(jt8);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(150, 250, 80, 25);
			add(cancelBtn);
			JButton submitBtn = new JButton("提交");
			submitBtn.setBounds(300, 250, 80, 25);
			add(submitBtn);
			for (int i = 0; i < this.getContentPane().getComponentCount(); i++) {
				Component comp = this.getContentPane().getComponent(i);
				comp.setFont(new Font("宋体", Font.BOLD, 20));
			}
			submitBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					
				}
			});
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
			
			}
}
	class querybookDialog extends JDialog {//查询对话框
		querybookDialog(){
			setTitle("查询图书");
			setBounds(500, 250, 600, 400);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("查询图书");
			jl1.setBounds(270, 10,100, 25);
			add(jl1);
			JLabel jl2 = new JLabel("书  名:");
			jl2.setBounds(100, 50,100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(200, 50, 230, 25);
			add(jt2);
			JLabel jl3 = new JLabel("作  者:");
			jl3.setBounds(100, 90,100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(200, 90, 230, 25);
			add(jt3);
			JLabel jl4 = new JLabel("出版社:");
			jl4.setBounds(100, 130,100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(200, 130, 230, 25);
			add(jt4);
			JLabel jl5 = new JLabel("查询条件:");
			jl5.setBounds(150, 160,100, 25);
			add(jl5);
			JButton JB1 = new JButton("开始查询");
			JB1.setBounds(300, 160, 100, 25);
			add(JB1);
			JLabel jl6 = new JLabel("查询结果(图书信息):");
			jl6.setBounds(20, 190,200, 25);
			add(jl6);
			JTextArea  jt=new JTextArea();
			jt.setBounds(20, 220, 550, 100);
			jt.setLineWrap(true);
			add(jt);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(180, 330, 80, 25);
			add(cancelBtn);
			JButton jb2 = new JButton("确定");
			jb2.setBounds(290, 330, 80, 25);
			add(jb2);
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
		}
		
	}
	class revisebookDialog extends JDialog {// 修改对话框类

		revisebookDialog() {
			setTitle("修改图书");
			setBounds(500, 250, 600, 400);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("书    号");
			jl1.setBounds(20, 50,100, 25);
			add(jl1);
			JTextField jt1 = new JTextField();
			jt1.setBounds(120, 50, 120, 25);
			add(jt1); 
			JLabel jl2 = new JLabel("作    者");
			jl2.setBounds(20, 100, 100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(120, 100, 120, 25);
			add(jt2);
			JLabel jl3 = new JLabel("价    格");
			jl3.setBounds(20, 150, 100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(120, 150, 120, 25);
			add(jt3);
			JLabel jl4 = new JLabel("存放位置");
			jl4.setBounds(20, 200, 100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(120, 200, 120, 25);
			add(jt4);
			JLabel jl5 = new JLabel("书    名");
			jl5.setBounds(300, 50, 100, 25);
			add(jl5);
			JTextField jt5 = new JTextField();
			jt5.setBounds(400, 50, 120, 25);
			add(jt5);
			JLabel jl6 = new JLabel("出 版 社");
			jl6.setBounds(300, 100, 100, 25);
			add(jl6);
			JTextField jt6 = new JTextField();
			jt6.setBounds(400, 100, 120, 25);
			add(jt6);
			JLabel jl7 = new JLabel("出版时间");
			jl7.setBounds(300, 150, 100, 25);
			add(jl7);
			JTextField jt7 = new JTextField();
			jt7.setBounds(400, 150, 120, 25);
			add(jt7);
			JLabel jl8 = new JLabel("数    量");
			jl8.setBounds(300, 200, 100, 25);
			add(jl8);
			JTextField jt8 = new JTextField();
			jt8.setBounds(400, 200, 120, 25);
			add(jt8);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(150, 250, 80, 25);
			add(cancelBtn);
			JButton submitBtn = new JButton("保存");
			submitBtn.setBounds(300, 250, 80, 25);
			add(submitBtn);
			for (int i = 0; i < this.getContentPane().getComponentCount(); i++) {
				Component comp = this.getContentPane().getComponent(i);
				comp.setFont(new Font("宋体", Font.BOLD, 20));
			}
			submitBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					
				}
			});
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
			
			}
}
	class deletebookDialog extends JDialog {//删除图书对话框
		deletebookDialog(){
			setTitle("删除图书");
			setBounds(500, 250, 600, 400);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("删除图书");
			jl1.setBounds(230, 10,100, 25);
			add(jl1);
			JLabel jl2 = new JLabel("书  名:");
			jl2.setBounds(100, 50,100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(200, 50, 230, 25);
			add(jt2);
			JLabel jl3 = new JLabel("作  者:");
			jl3.setBounds(100, 90,100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(200, 90, 230, 25);
			add(jt3);
			JLabel jl4 = new JLabel("出版社:");
			jl4.setBounds(100, 130,100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(200, 130, 230, 25);
			add(jt4);
			JLabel jl5 = new JLabel("查询条件:");
			jl5.setBounds(150, 160,100, 25);
			add(jl5);
			JButton JB1 = new JButton("开始查询");
			JB1.setBounds(300, 160, 100, 25);
			add(JB1);
			JLabel jl6 = new JLabel("查询结果(图书信息):");
			jl6.setBounds(20, 190,200, 25);
			add(jl6);
			JTextArea  jt=new JTextArea();
			jt.setBounds(20, 220, 550, 100);
			jt.setLineWrap(true);
			add(jt);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(180, 330, 80, 25);
			add(cancelBtn);
			JButton jb2 = new JButton("删除");
			jb2.setBounds(290, 330, 80, 25);
			add(jb2);
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
		}
		
	}

	class borrowbookDialog extends JDialog {//借书对话框
		borrowbookDialog(){
			setTitle("开始借书");
			setBounds(500, 250, 600, 400);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("开始借书");
			jl1.setBounds(270, 10,100, 25);
			add(jl1);
			JLabel jl2 = new JLabel("书  名:");
			jl2.setBounds(100, 50,100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(200, 50, 230, 25);
			add(jt2);
			JLabel jl3 = new JLabel("作  者:");
			jl3.setBounds(100, 90,100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(200, 90, 230, 25);
			add(jt3);
			JLabel jl4 = new JLabel("出版社:");
			jl4.setBounds(100, 130,100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(200, 130, 230, 25);
			add(jt4);
			JLabel jl5 = new JLabel("检索条件:");
			jl5.setBounds(150, 160,100, 25);
			add(jl5);
			JButton JB1 = new JButton("开始检索");
			JB1.setBounds(300, 160, 100, 25);
			add(JB1);
			JLabel jl6 = new JLabel("检索结果(图书信息):");
			jl6.setBounds(20, 190,200, 25);
			add(jl6);
			JTextArea  jt=new JTextArea();
			jt.setBounds(20, 220, 550, 100);
			jt.setLineWrap(true);
			add(jt);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(180, 330, 80, 25);
			add(cancelBtn);
			JButton jb2 = new JButton("借书");
			jb2.setBounds(290, 330, 80, 25);
			add(jb2);
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
		}
		
	}
	class returnbookDialog extends JDialog {//还书对话框
		returnbookDialog(){
			setTitle("开始还书");
			setBounds(500, 250, 600, 300);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			JLabel jl1 = new JLabel("开始还书");
			jl1.setBounds(270, 10,100, 25);
			add(jl1);
			JLabel jl2 = new JLabel("书  名:");
			jl2.setBounds(100, 50,100, 25);
			add(jl2);
			JTextField jt2 = new JTextField();
			jt2.setBounds(200, 50, 230, 25);
			add(jt2);
			JLabel jl3 = new JLabel("作  者:");
			jl3.setBounds(100, 90,100, 25);
			add(jl3);
			JTextField jt3 = new JTextField();
			jt3.setBounds(200, 90, 230, 25);
			add(jt3);
			JLabel jl4 = new JLabel("出版社:");
			jl4.setBounds(100, 130,100, 25);
			add(jl4);
			JTextField jt4 = new JTextField();
			jt4.setBounds(200, 130, 230, 25);
			add(jt4);
			JButton cancelBtn = new JButton("取消");
			cancelBtn.setBounds(200, 180, 80, 25);
			add(cancelBtn);
			JButton jb2 = new JButton("还书");
			jb2.setBounds(340, 180, 80, 25);
			add(jb2);
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					dispose();
				}
			});
		}
		
	}
	class LoginDialog extends JDialog {// 登录对话框类
		JLabel usernamelbl;
		JLabel passwordlbl;
		JComboBox username;
		JPasswordField password;
		JButton loginBtn;
		JButton cancelBtn;

		LoginDialog() {
			createGUIElements();
		}//

		void createGUIElements() {
			// 设置登录对话框,并设置位置及大小、模态等
			setTitle("登录系统");
			setBounds(500, 250, 300, 250);
			setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
			setLayout(null);
			setModal(true);
			// 创建用户名与密码标签
			usernamelbl = new JLabel("用户名:");
			usernamelbl.setBounds(50, 30, 50, 20);
			this.add(usernamelbl);
			passwordlbl = new JLabel("密  码:");
			passwordlbl.setBounds(50, 80, 50, 20);
			this.add(passwordlbl);

			// 创建用户名与密码输入组件,并赋处值
			username = new JComboBox();
			username.addItem("沓");
			username.addItem("飞");
			username.setBounds(105, 30, 105, 20);
			this.add(username);
			password = new JPasswordField("123456");
			password.setBounds(105, 80, 105, 20);
			password.setEchoChar('*');
			this.add(password);

			// 创建登录与退出按钮,并添加事件
			loginBtn = new JButton("登录");
			loginBtn.setBounds(50, 130, 60, 20);
			add(loginBtn);
			loginBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent e) {
					login();
				} // 方法结束
			});
			cancelBtn = new JButton("退出");
			cancelBtn.setBounds(150, 130, 60, 20);
			add(cancelBtn);
			cancelBtn.addActionListener(new ActionListener() {
				@Override
				public void actionPerformed(ActionEvent arg0) {
					logout();
				}
			});
		}

		void login() // 处理登录按钮事件
		{
			String accout = username.getSelectedItem().toString();
			String pwd = new String(password.getPassword());

			// 如果用户名与密码正确,则隐藏登录对话框,显示主窗体
			if (accout.equals("沓") && pwd.equals("123456")) {
				setVisible(false);// 只隐藏存在潜在问题,可用dispose()彻底销毁
				showMianWindow();// 显示主窗体
			} else {
				JOptionPane.showMessageDialog(this, "用户名是" + accout + ",密码是" + pwd);
			}
		}

		void logout()// 处理取消按钮事件
		{
			int ret = JOptionPane.showConfirmDialog(this, "选择是,取消登录。", "取消登录",
					JOptionPane.YES_NO_OPTION);
			if (ret == JOptionPane.YES_OPTION) {
				dispose();
			}
		}

		void showMianWindow() {// 显示主窗体
			tushuguan jf=new tushuguan();
			jf.setVisible(true);
		}
	}

结束,代码还有待完善,,,,,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值