项目介绍:利用java语言制作一个DVD租赁管理系统,实现功能再如下介绍
1.登陆界面:
代码如:
package com.iotek.view;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;public class LoginView extends JFrame {
private JPanel panel_main= null;
private JPanel panel_left=null;
private JPanel panel_right=null;
private JLabel lb_uname=null;
private JLabel lb_upass=null;
private JLabel lb_type=null;
private JTextField tf_uname=null;
private JPasswordField pf_pass=null;
private JLabel lb_img=null;
private JButton btn_login=null;
private JButton btn_register=null;
private JComboBox cb_type=null;
public LoginView(){
init();
}
private void init(){
this.setSize(320, 220);
this.setResizable(false);
this.setLocationRelativeTo(null);
this.setTitle("登录窗口");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel_main=new JPanel(new GridLayout(1, 2));
panel_left=new JPanel();
panel_right=new JPanel(new GridLayout(4, 2,0,10));
tf_uname=new JTextField(8);
pf_pass=new JPasswordField(8);
cb_type=new JComboBox();
cb_type.addItem("普通用户");
cb_type.addItem("管理员");
btn_login=new JButton("登录");
btn_register=new JButton("注册") ;
lb_uname=new JLabel("用 户:",JLabel.CENTER);
lb_upass=new JLabel("密 码:",JLabel.CENTER);
lb_type=new JLabel("类 型:",JLabel.CENTER);
lb_img=new JLabel(new ImageIcon(ClassLoader.getSystemResource("1.jpg")));
panel_left.add(lb_img);
panel_right.add(lb_uname);
panel_right.add(tf_uname);
panel_right.add(lb_upass);
panel_right.add(pf_pass);
panel_right.add(lb_type);
panel_right.add(cb_type);
panel_right.add(btn_login);
panel_right.add(btn_register);
panel_main.add(panel_left);
panel_main.add(panel_right);
this.getContentPane().add(panel_main);
this.pack();
this.setVisible(true);
}
}
显示结果如下:
其中用户分为管理员和普通用户,其中有不同的功能,有注册界面
注册代码如下:
package com.iotek.view;
import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class UserRegisterView extends JFrame {
private JPanel panel_main= null;
private JPanel panel1=null;
private JPanel panel2=null;
private JPanel panel3=null;
private JPanel panel4=null;
private JPanel panel5=null;
private JLabel lb_name=null;
private JLabel lb_init_pass=null;
private JLabel lb_comfirm_pass=null;
private JTextField tf_uname=null;
private JPasswordField userPassInit=null;
private JPasswordField userPassConfirm=null;
private JButton btn_confirm=null;
private JButton btn_back=null;
public UserRegisterView(){
init();
}
private void init(){
this.setBounds(100, 100, 320, 200);
this.setResizable(true);
this.setLocationRelativeTo(null);//居中显示
this.setTitle("注册窗口");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.getRootPane().setDefaultButton(btn_confirm);//设置按回车键为默认按btn_confirm按钮
tf_uname=new JTextField(15);
userPassInit=new JPasswordField(15);
userPassConfirm=new JPasswordField(15);
btn_confirm=new JButton("确定提交");
btn_back=new JButton("退出");
lb_name=new JLabel("用 户 名: ");
lb_init_pass=new JLabel("初 始 化 密 码:");
lb_comfirm_pass=new JLabel("确 认 密 码: ");
panel_main=new JPanel(new GridLayout(5,1));
panel1=new JPanel();
panel2=new JPanel();
panel3=new JPanel();
panel4=new JPanel();
panel5=new JPanel();
panel1.add(lb_name);
panel1.add(tf_uname);
panel2.add(lb_init_pass);
panel2.add(userPassInit);
panel3.add(lb_comfirm_pass);
panel3.add(userPassConfirm);
panel4.add(btn_confirm);
panel4.add(btn_back);
panel_main.add(panel1);
panel_main.add(panel2);
panel_main.add(panel3);
panel_main.add(panel4);
panel_main.add(panel5);
this.getContentPane().add(panel_main);
this.pack();
this.setVisible(true);
}
}
显示的界面如下:
2.下面是用户界面:
代码如下:
package com.iotek.view;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Event;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;public class UserMainView extends JFrame {
private JPanel panel_main=null;
private JPanel wel_panel=null;
private JDesktopPane funcDesktop=null;
private JPanel btn_panel=null;
private JButton btn_1=null;
private JButton btn_2=null;
private JButton btn_3=null;
private JLabel desklable=null;
private JLabel wel_lable=null;
public UserMainView(){
init();
registerListener();
}
private void init(){
panel_main=new JPanel(new BorderLayout());
btn_panel=new JPanel(new GridLayout(7,1,0,35));
btn_1=new JButton("DVD查询操作");
btn_2=new JButton("DVD租赁记录查询");
btn_3=new JButton("退出");
btn_panel.add(new JLabel());
btn_panel.add(new JLabel());
btn_panel.add(btn_1);
btn_panel.add(btn_2);
btn_panel.add(btn_3);
btn_panel.add(new JLabel());
btn_panel.add(new JLabel());
btn_panel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createRaisedBevelBorder(),"快捷功能区"));
wel_panel=new JPanel();
wel_lable=new JLabel("欢 迎 使 用 DVD 租 赁 系 统");
wel_lable.setFont(new Font("宋体", Font.BOLD, 23));
wel_lable.setForeground(Color.BLUE);
wel_panel.add(wel_lable);
funcDesktop=new JDesktopPane();
ImageIcon image=new ImageIcon("src/2.jpg");
desklable=new JLabel(image);
desklable.setBounds(0, 0, image.getIconWidth(), image.getIconHeight());
funcDesktop.add(desklable,new Integer(Integer.MIN_VALUE));
panel_main.add(btn_panel,BorderLayout.EAST);
panel_main.add(wel_panel,BorderLayout.NORTH);
panel_main.add(funcDesktop,BorderLayout.CENTER);
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new Thread(new DynaminThread()).start();
}
});
this.setTitle("DVD租赁管理系统");
this.getContentPane().add(panel_main);
this.setSize(1000,550);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void registerListener(){
btn_1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
UserQueryRentDVDView qdv=new UserQueryRentDVDView();
funcDesktop.add(qdv);
qdv.toFront();
}
});
btn_2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
UserQueryDVDRecordView qdv=new UserQueryDVDRecordView();
funcDesktop.add(qdv);
qdv.toFront();
}
});
}
private class DynaminThread implements Runnable{
@Override
public void run() {
while(true){
for(int i=1000;i>-550;i--){
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
wel_lable.setLocation(i, 5);
}
}
}
}
}
显示界面如下:
3.管理员界面
代码如下:
package com.iotek.view;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class AdminMainView extends JFrame {
private JPanel panel_main=null;
private JPanel wel_panel=null;
private JDesktopPane funcDesktop=null;//桌面面板
private JPanel btn_panel=null;
private JButton btn_1=null;
private JButton btn_2=null;
private JButton btn_3=null;
private JLabel desklable=null;
private JLabel wel_lable=null;
public AdminMainView(){
init();
registerListener();
}
private void init(){
panel_main=new JPanel(new BorderLayout());
btn_panel=new JPanel(new GridLayout(7,1,0,35));
btn_1=new JButton("管理员DVD操作");
btn_2=new JButton("DVD租赁记录查询");
btn_3=new JButton("退出");
btn_panel.add(new JLabel());
btn_panel.add(new JLabel());
btn_panel.add(btn_1);
btn_panel.add(btn_2);
btn_panel.add(btn_3);
btn_panel.add(new JLabel());
btn_panel.add(new JLabel());
btn_panel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createRaisedBevelBorder(),"快捷功能区"));
wel_panel=new JPanel();
wel_lable=new JLabel("欢 迎 使 用 DVD 租 赁 系 统");
wel_lable.setFont(new Font("宋体", Font.BOLD, 23));
wel_lable.setForeground(Color.BLUE);
wel_panel.add(wel_lable);
funcDesktop=new JDesktopPane();
ImageIcon image=new ImageIcon("src/3.jpg");
desklable=new JLabel(image);
desklable.setBounds(0, 0, image.getIconWidth(), image.getIconHeight());
funcDesktop.add(desklable,new Integer(Integer.MIN_VALUE));
panel_main.add(btn_panel,BorderLayout.EAST);
panel_main.add(wel_panel,BorderLayout.NORTH);
panel_main.add(funcDesktop,BorderLayout.CENTER);
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new Thread(new DynaminThread()).start();
}
});
this.setTitle("DVD租赁管理系统");
this.getContentPane().add(panel_main);
this.setSize(1000,550);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void registerListener(){
btn_1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
AdminQureyRentDVDView qde=new AdminQureyRentDVDView();
funcDesktop.add(qde);
qde.toFront();
}
});
btn_2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
AdminQueryDVDRecordView qde=new AdminQueryDVDRecordView();
funcDesktop.add(qde);
qde.toFront();
}
});
}
private class DynaminThread implements Runnable{
@Override
public void run() {
while(true){
for(int i=1000;i>-550;i--){
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
wel_lable.setLocation(i, 5);
}
}
}
}
}
显示的界面如下: