📄 librarywindow.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 + -