⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 librarywindow.java

📁 是Eclipse web开发从入门到精通的源码
💻 JAVA
字号:
 package library.main;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;

import library.book.BookAdd;
import library.book.BookDelete;
import library.book.BookList;
import library.book.BookModify;
import library.book.BorrowBook;
import library.book.BorrowBookList;
import library.book.ReturnBook;
import library.info.BorrowInfo;
import library.info.ReturnInfo;
import library.user.UserAdd;
import library.user.UserDelete;
import library.user.UserList;
import library.user.UserLogin;
import library.user.UserModify;

/**
 * 图书管理系统的主界面
 * 
 * @author lianhw
 *
 */
public class LibraryWindow extends JFrame implements ActionListener {
	JPanel panel1;

	Container container;

	JMenuBar menuBar;

	JMenu systemMenu, bookMGRMenu, borrowBookMenu, returnBookMenu,
			infoBrowseMenu, userMGRMenu;

	JMenuItem userLoginMenuItem, userAddMenuItem, userModifyMenuItem,
			userDeleteMenuItem, exitMenuItem, bookAddMenuItem,
			bookModifyMenuItem, bookDeleteMenuItem, borrowBookMenuItem,
			borrowInfoMenuItem, returnBookMenuItem, returnInfoMenuItem,
			bookListMenuItem, borrowBookListMenuItem, userListMenuItem;

	JLabel titleLabel, authorLabel, dateLabel;

	public LibraryWindow() {
		super("图书管理系统");
		// --系统管理菜单--
		menuBar = new JMenuBar();
		systemMenu = new JMenu("系统管理");
		userMGRMenu = new JMenu("用户管理");
		userLoginMenuItem = new JMenuItem("用户登录");
		userAddMenuItem = new JMenuItem("添加用户");
		userModifyMenuItem = new JMenuItem("修改用户");
		userDeleteMenuItem = new JMenuItem("删除用户");
		exitMenuItem = new JMenuItem("退出");
		systemMenu.add(userLoginMenuItem);
		userMGRMenu.add(userAddMenuItem);
		userMGRMenu.add(userModifyMenuItem);
		userMGRMenu.add(userDeleteMenuItem);
		systemMenu.add(userMGRMenu);
		systemMenu.add(exitMenuItem);
		userLoginMenuItem.addActionListener(this);
		userAddMenuItem.addActionListener(this);
		userModifyMenuItem.addActionListener(this);
		userDeleteMenuItem.addActionListener(this);
		exitMenuItem.addActionListener(this);
		menuBar.add(systemMenu);
		// ---书籍管理菜单--
		bookMGRMenu = new JMenu("书籍管理");
		bookAddMenuItem = new JMenuItem("添加书籍");
		bookModifyMenuItem = new JMenuItem("修改书籍");
		bookDeleteMenuItem = new JMenuItem("删除书籍");
		bookMGRMenu.add(bookAddMenuItem);
		bookMGRMenu.add(bookModifyMenuItem);
		bookMGRMenu.add(bookDeleteMenuItem);
		bookAddMenuItem.addActionListener(this);
		bookModifyMenuItem.addActionListener(this);
		bookDeleteMenuItem.addActionListener(this);
		menuBar.add(bookMGRMenu);
		// --借书管理菜单--
		borrowBookMenu = new JMenu("借书管理");
		borrowBookMenuItem = new JMenuItem("书籍出借");
		borrowInfoMenuItem = new JMenuItem("出借信息修改");
		borrowBookMenu.add(borrowBookMenuItem);
		borrowBookMenu.add(borrowInfoMenuItem);
		borrowBookMenuItem.addActionListener(this);
		borrowInfoMenuItem.addActionListener(this);
		menuBar.add(borrowBookMenu);
		// --还书管理菜单--
		returnBookMenu = new JMenu("还书管理");
		returnBookMenuItem = new JMenuItem("书籍还入");
		returnInfoMenuItem = new JMenuItem("书籍还入信息修改");
		returnBookMenu.add(returnBookMenuItem);
		returnBookMenu.add(returnInfoMenuItem);
		returnBookMenuItem.addActionListener(this);
		returnInfoMenuItem.addActionListener(this);
		menuBar.add(returnBookMenu);
		// --信息一览菜单--
		infoBrowseMenu = new JMenu("信息查询");
		bookListMenuItem = new JMenuItem("书籍列表");
		borrowBookListMenuItem = new JMenuItem("借阅情况表");
		userListMenuItem = new JMenuItem("用户列表");
		infoBrowseMenu.add(bookListMenuItem);
		infoBrowseMenu.add(borrowBookListMenuItem);
		infoBrowseMenu.add(userListMenuItem);
		bookListMenuItem.addActionListener(this);
		borrowBookListMenuItem.addActionListener(this);
		userListMenuItem.addActionListener(this);
		menuBar.add(infoBrowseMenu);
		// ----------------------------------
		setJMenuBar(menuBar);

		titleLabel = new JLabel(new ImageIcon(".\\pic.jpg"));
		container = getContentPane();
		container.setLayout(new BorderLayout());
		panel1 = new JPanel();
		panel1.setLayout(new BorderLayout());
		panel1.add(titleLabel, BorderLayout.CENTER);
		container.add(panel1, BorderLayout.CENTER);
		setBounds(100, 50, 400, 300);
		show();
		// --设置初始功能:--
		userMGRMenu.setEnabled(false);
		bookMGRMenu.setEnabled(false);
		borrowBookMenu.setEnabled(false);
		returnBookMenu.setEnabled(false);
		infoBrowseMenu.setEnabled(false);
	}

	// --设置每个菜单点击后出现的窗口和窗口显示的位置--
	public void actionPerformed(ActionEvent e) {
		if (e.getActionCommand() == "用户登录") {
			UserLogin userLoginFrame = new UserLogin(this);
			Dimension frameSize = userLoginFrame.getPreferredSize();
			Dimension mainFrameSize = getSize();
			Point loc = getLocation();
			userLoginFrame.setLocation((mainFrameSize.width - frameSize.width)
					/ 2 + loc.x, (mainFrameSize.height - frameSize.height) / 2
					+ loc.y);
			userLoginFrame.pack();
			userLoginFrame.show();
		} else if (e.getActionCommand() == "添加用户") {
			UserAdd UserAddFrame = new UserAdd();
			Dimension FrameSize = UserAddFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			UserAddFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			UserAddFrame.pack();
			UserAddFrame.show();
		} else if (e.getActionCommand() == "修改用户") {
			UserModify UserModifyFrame = new UserModify();
			Dimension FrameSize = UserModifyFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			UserModifyFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			UserModifyFrame.pack();
			UserModifyFrame.show();
		} else if (e.getActionCommand() == "删除用户") {
			UserDelete UserDeleteFrame = new UserDelete();
			Dimension FrameSize = UserDeleteFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			UserDeleteFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			UserDeleteFrame.pack();
			UserDeleteFrame.show();
		} else if (e.getActionCommand() == "添加书籍") {
			BookAdd BookAddFrame = new BookAdd();
			Dimension FrameSize = BookAddFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BookAddFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BookAddFrame.pack();
			BookAddFrame.show();
		} else if (e.getActionCommand() == "修改书籍") {
			BookModify BookModifyFrame = new BookModify();
			Dimension FrameSize = BookModifyFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BookModifyFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BookModifyFrame.pack();
			BookModifyFrame.show();
		} else if (e.getActionCommand() == "删除书籍") {
			BookDelete BookDeleteFrame = new BookDelete();
			Dimension FrameSize = BookDeleteFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BookDeleteFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BookDeleteFrame.pack();
			BookDeleteFrame.show();
		} else if (e.getActionCommand() == "书籍出借") {
			BorrowBook BorrowBookFrame = new BorrowBook();
			Dimension FrameSize = BorrowBookFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BorrowBookFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BorrowBookFrame.pack();
			BorrowBookFrame.show();
		} else if (e.getActionCommand() == "出借信息修改") {
			BorrowInfo BorrowInfoFrame = new BorrowInfo();
			Dimension FrameSize = BorrowInfoFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BorrowInfoFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BorrowInfoFrame.pack();
			BorrowInfoFrame.show();
		} else if (e.getActionCommand() == "书籍还入") {
			ReturnBook returnBookFrame = new ReturnBook();
			Dimension FrameSize = returnBookFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			returnBookFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			returnBookFrame.pack();
			returnBookFrame.show();
		} else if (e.getActionCommand() == "书籍还入信息修改") {
			ReturnInfo returnInfoFrame = new ReturnInfo();
			Dimension FrameSize = returnInfoFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			returnInfoFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			returnInfoFrame.pack();

			returnInfoFrame.show();
		} else if (e.getActionCommand() == "书籍列表") {
			BookList BookListFrame = new BookList();
			Dimension FrameSize = BookListFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BookListFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			BookListFrame.pack();
			BookListFrame.show();
		} else if (e.getActionCommand() == "借阅情况表") {
			BorrowBookList BorrowBookListFrame = new BorrowBookList();
			Dimension FrameSize = BorrowBookListFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			BorrowBookListFrame.setLocation(
					(MainFrameSize.width - FrameSize.width) / 2 + loc.x,
					(MainFrameSize.height - FrameSize.height) / 2 + loc.y);
			BorrowBookListFrame.pack();
			BorrowBookListFrame.show();
		} else if (e.getActionCommand() == "用户列表") {
			UserList UserListFrame = new UserList();
			Dimension FrameSize = UserListFrame.getPreferredSize();
			Dimension MainFrameSize = getSize();
			Point loc = getLocation();
			UserListFrame.setLocation((MainFrameSize.width - FrameSize.width)
					/ 2 + loc.x, (MainFrameSize.height - FrameSize.height) / 2
					+ loc.y);
			UserListFrame.pack();
			UserListFrame.show();
		} else if (e.getActionCommand() == "退出") {
			this.dispose();
			System.exit(0);
		}
	}

	/**
	 * 设置用户登录的权限,分为四种权限“系统管理员”、“书籍管理员”、“借阅管理员”和“其他”
	 * 
	 * @param powerType
	 */
	public void setEnable(String powerType) {
		
		if (powerType.trim().equals("系统管理员")) {
            //系统管理员具有全部的权限
			userMGRMenu.setEnabled(true);
			bookMGRMenu.setEnabled(true);
			borrowBookMenu.setEnabled(true);
			returnBookMenu.setEnabled(true);
			infoBrowseMenu.setEnabled(true);
			userListMenuItem.setEnabled(true);
		} else if (powerType.trim().equals("书籍管理员")) {
			//书籍管理员拥有书籍管理和信息查询权限
			userMGRMenu.setEnabled(false);
			bookMGRMenu.setEnabled(true);
			borrowBookMenu.setEnabled(false);
			returnBookMenu.setEnabled(false);
			infoBrowseMenu.setEnabled(true);
			userListMenuItem.setEnabled(false);

		} else if (powerType.trim().equals("借阅管理员")) {
			//借阅管理员拥有借书管理、还书管理和信息查询权限
			userMGRMenu.setEnabled(false);
			bookMGRMenu.setEnabled(false);
			borrowBookMenu.setEnabled(true);
			returnBookMenu.setEnabled(true);
			infoBrowseMenu.setEnabled(true);
			userListMenuItem.setEnabled(false);
		} else if (powerType.trim().equals("else")) {
			//其他角色没用任何权限
			userMGRMenu.setEnabled(false);
			bookMGRMenu.setEnabled(false);
			borrowBookMenu.setEnabled(false);
			returnBookMenu.setEnabled(false);
			infoBrowseMenu.setEnabled(false);
		}
	}

	public static void main(String args[]) {
		LibraryWindow mainFrame = new LibraryWindow();

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -