今天为大家分享一个java语言编写的KTV系统,目前系统功能已经很全面,后续会进一步完善。整个系统界面漂亮,有完整得源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步
开发环境
开发语言为Java,开发环境Eclipse或者IDEA都可以,数据为MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。
系统框架
利用JDK自带的SWING框架开发。纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档。
主要功能
运行方法
下载源码后,导入到Eclipse或者IDEA中,然后运行Main.java,出现界面即表示程序运行成功
开发背景
随着社会的发展,人类的进步,21世纪人们的生活水平有所提高,为了满足人们对生活的需要,丰富业余生活,娱乐KTV等行业蓬勃发展,在数字化的今天,我们已离不开计算机,为了加强对KTV的管理,我们必须使用计算机来对包厢以及包厢预订进行管理,使KTV管理员对歌曲点播和分配包厢等操作的管理更加有序、到位。
KTV管理系统主要功能模块包括KTV资讯、房间管理、预订管理、商品信息管理等,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作。
主要功能
(1)预定管理模块:根据用户的需求,预定对应的房间信息。
(2)员工管理模块:增删改查员工管理员可以根据员工的编号来查询员工的工作岗位,有权对员工的工作进行更改,同时管理员也负责歌曲曲目的分类以及整理。
(3)包间管理模块:包间类型分为四个等级,分别为:豪华包间、大包间、中包间、小包间。根据包间编号可以查询包间的基本信息。
(4)商品管理:对KTV的商品进行日常的维护工作。包括增加、删除、修改
运行效果
![](https://i-blog.csdnimg.cn/blog_migrate/b34e51e7663de669d894cbab3a2b37a6.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/84aab7c03dd64fd1224ee90bd78421c5.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/86f62e1206da39c4d2460399e72f4531.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/e2ae18c01f0d2c0eafb25fe14d7827f6.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/45b8dc332b9823d9400324e3c369a126.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/ce789789a6e9a4a49c2c2b445650bf8f.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/d0fa156b465cbe0fbde2b63275ea8a1b.jpeg)
关键代码
package frame;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Frame;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import listener.LoginListener;
import com.sun.awt.AWTUtilities;
public class LoginFrame extends JFrame implements Runnable {
/**
*
*/
private static final long serialVersionUID = 7635382088464340846L;
private static LoginFrame loginFrame;
private static JDialog loginDialog;
private JTextField jtfUserName;
private JPasswordField jpfPassword;
public static LoginFrame instance() {
if (loginFrame == null)
loginFrame = new LoginFrame();
return loginFrame;
}
public static JDialog getLoginDialog() {
if (loginDialog == null)
loginDialog = new JDialog();
return loginDialog;
}
public LoginFrame() {
super("登陆系统");
loginFrame = this;
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
loginDialog = new JDialog(this);
jtfUserName = new JTextField();
jpfPassword = new JPasswordField();
final ImageButton ensure = new ImageButton("ensure");
final ImageButton cancel = new ImageButton("cancel");
loginDialog.setSize(420, 380);
loginDialog.setLayout(null);
loginDialog.setUndecorated(true);
loginDialog.setLocationRelativeTo(null);
JLabel loginBg = new JLabel(new ImageIcon(this.getClass().getResource(
"/images/login.png")));
loginBg.setBounds(0, 0, (int) loginDialog.getWidth(),
(int) loginDialog.getHeight());
loginDialog.add(jtfUserName);
loginDialog.add(jpfPassword);
loginDialog.add(ensure);
loginDialog.add(cancel);
loginDialog.add(loginBg);
AWTUtilities.setWindowOpaque(loginDialog, false);
jtfUserName.setBorder(null);
jtfUserName.setOpaque(false);
jtfUserName.setForeground(Color.LIGHT_GRAY);
jpfPassword.setBorder(null);
jpfPassword.setOpaque(false);
jpfPassword.setForeground(Color.LIGHT_GRAY);
jtfUserName.setBounds(40, 110, 340, 50);
jpfPassword.setBounds(40, 210, 340, 50);
ensure.setBounds(75, 290, 110, 45);
cancel.setBounds(235, 290, 110, 45);
jtfUserName.setSelectionColor(Color.GRAY);
jpfPassword.setSelectionColor(Color.GRAY);
jtfUserName.setFont(new Font("微软雅黑", Font.PLAIN, 24));
jpfPassword.setFont(new Font("微软雅黑", Font.PLAIN, 24));
LoginListener loginListener = new LoginListener(jtfUserName,
jpfPassword, ensure, cancel);
jtfUserName.addActionListener(loginListener);
jpfPassword.addActionListener(loginListener);
ensure.addActionListener(loginListener);
cancel.addActionListener(loginListener);
((JPanel) this.getContentPane()).setOpaque(false);
BackgroundPanel background = new BackgroundPanel();
getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
setSize(screenSize);
setUndecorated(true);
setBackground(Color.BLACK);
setLocationRelativeTo(null);
setExtendedState(Frame.MAXIMIZED_BOTH);
setMinimumSize(new Dimension(1024, 768));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setIconImage(new ImageIcon(this.getClass().getResource(
"/images/icon.png")).getImage());
}
public void open() {
jtfUserName.setText("");
jpfPassword.setText("");
jtfUserName.requestFocus();
setVisible(true);
loginDialog.setVisible(true);
if(LoadingFrame.instance().isVisible())
LoadingFrame.instance().dispose();
}
public void easeOpacity(float opacity) {
if (opacity <= 0) {
opacity = 0;
return;
} else if (opacity > 1) {
opacity = 1;
}
AWTUtilities.setWindowOpacity(loginDialog, opacity);
}
public void showMainFrame() {
MainFrame.instance().open();
}
public void exit() {
System.exit(0);
}
@Override
public void run() {
instance().open();
}
}
项目总结
经过半个月的熬夜编码,我终于完成KTV管理系统的设计与开发,达到了预期的目标。在开发的过程中过程中遇到不少困难,通过查阅相关资料,反复琢磨,请教同学,问题最终都得以解决。这个系统主要是我自己开发的,在开发过程中得到了老师和同学的很大帮助,在此对他们表示感谢。