Eclipse+Java+Swing实现电子相册管理系统

AutoPlay.java


package com.sjsq;

import java.util.Timer;

import java.util.TimerTask;

/**

  • 自动播放

  • @author 浪客剑心

  • @author shuijianshiqing

  • @date 2020-09-08 19:29

*/

public class AutoPlay {

private int second;

FullFrame frame;

private final Timer timer = new Timer();

// 设置播放时间间隔为2s

public AutoPlay(FullFrame fullFrame) {

this.frame = fullFrame;

second = 2;

}

public void start() {

timer.schedule(new TimerTask() {

public void run() {

frame.Forward();

frame.getJButton1().setEnabled(false);

}

}, second * 1000, second * 1000);

}

public void stop() {

timer.cancel();

}

}

FileNode.java


package com.sjsq;

import java.io.File;

import java.io.IOException;

import javax.swing.tree.DefaultMutableTreeNode;

public class FileNode extends DefaultMutableTreeNode {

private boolean explored_ = false;

public FileNode(File file) {

setUserObject(file);

}

public boolean getAllowChildren() {

return isDirectory();

}

public boolean isLeaf() {

return !isDirectory();

}

public File getFile() {

return (File) getUserObject();

}

public boolean isExplored() {

return explored_;

}

public boolean isDirectory() {

File file = getFile();

return file.isDirectory();

}

public String toString() {

File file = getFile();

String filename = file.toString();

int index = filename.lastIndexOf(“\”);

return (index != -1 && index != filename.length() - 1) ? filename.substring(index + 1) : filename;

}

public String getString() {

File file = getFile();

String filename = file.getAbsolutePath();

return filename;

}

public File getWorR() {

File file = getFile();

File file1 = file.getAbsoluteFile();

return file1;

}

public String getWorR1() throws IOException {

File file = getFile();

String file1 = file.getPath();

return file1;

}

public void explore() {

if (!isDirectory()) {

return;

}

if (!isExplored()) {

File file = getFile();

File[] children = file.listFiles();

for (int i = 0; i < children.length; ++i) {

if (children[i].isDirectory()) {

add(new FileNode(children[i]));

}

}

explored_ = true;

}

}

}

FullFrame.java


package com.sjsq;

import java.awt.Image;

import java.io.File;

import java.util.ArrayList;

import javax.swing.GroupLayout;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JScrollPane;

import javax.swing.JTextField;

import javax.swing.JToolBar;

import javax.swing.LayoutStyle;

import javax.swing.SwingConstants;

/**

  • 全屏

  • @author shuijianshiqing

  • @date 2020-09-08 19:32

*/

public class FullFrame extends JFrame {

private JButton jButton1;

private JButton jButton2;

private JButton jButton3;

private JButton jButton4;

private JButton jButton5;

private JButton jButton6;

private JLabel jLabel1;

private JScrollPane jScrollPane1;

private JToolBar jToolBar1;

ArrayList ClickedFilePath = new ArrayList();

ArrayList ImagesNameTF = new ArrayList();

ArrayList SmallLabels = new ArrayList();

int SelectImage = 0;

double CurrentMultiple = 1;

int ImagesQuantity = 0;

int flag = 0;

AutoPlay play;

String OpenFilePath;

public FullFrame(ArrayList ClickedFilePath, ArrayList ImagesNameTF, int SelectImage,

int ImagesQuantity, ArrayList SmallLabels, String OpenFilePath) {

initComponents();

setTitle(“电子相册全屏操作页面”);

setExtendedState(JFrame.MAXIMIZED_BOTH);

this.ClickedFilePath = ClickedFilePath;

this.ImagesNameTF = ImagesNameTF;

this.SelectImage = SelectImage;

this.ImagesQuantity = ImagesQuantity - 1;

this.SmallLabels = SmallLabels;

this.OpenFilePath = OpenFilePath;

if (SelectImage == -1) {

jButton2.setEnabled(false);

jButton1.setEnabled(false);

jButton5.setEnabled(false);

jButton6.setEnabled(false);

}

if (SelectImage == 0) {

jButton1.setEnabled(false);

jButton1.setEnabled(false);

}

if (SelectImage == ImagesQuantity - 1) {

jButton1.setEnabled(true);

jButton2.setEnabled(false);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

jButton5.setEnabled(false);

jButton6.setEnabled(false);

}

if (SelectImage != ImagesQuantity - 1 && SelectImage != 0 && SelectImage != -1) {

jButton1.setEnabled(true);

jButton2.setEnabled(true);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

jButton5.setEnabled(true);

jButton6.setEnabled(true);

}

}

public void Back() {

if (SelectImage - 1 >= 0) {

for (int i = 0; i < ClickedFilePath.size(); i++) {

if (ClickedFilePath.get(i).getName().equals(ImagesNameTF.get(SelectImage - 1).getText())) {

ImageIcon ic1 = new ImageIcon(ClickedFilePath.get(i).getAbsolutePath());

Image im = ic1.getImage().getScaledInstance(ic1.getIconWidth(), ic1.getIconHeight(),

Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

}

}

SelectImage = SelectImage - 1;

if (SelectImage == 0) {

getJButton1().setEnabled(false);

} else {

getJButton1().setEnabled(true);

jButton2.setEnabled(true);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

jButton5.setEnabled(true);

jButton6.setEnabled(true);

}

}

}

public void Forward() {

if (SelectImage + 1 <= ImagesQuantity) {

for (int i = 0; i < ClickedFilePath.size(); i++) {

if (ClickedFilePath.get(i).getName().equals(ImagesNameTF.get(SelectImage + 1).getText())) {

ImageIcon ic1 = new ImageIcon(ClickedFilePath.get(i).getAbsolutePath());

Image im = ic1.getImage().getScaledInstance(ic1.getIconWidth(), ic1.getIconHeight(),

Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

}

}

SelectImage = SelectImage + 1;

if (SelectImage == ImagesQuantity) {

jButton2.setEnabled(false);

jButton5.setEnabled(false);

jButton6.setEnabled(false);

getJButton1().setEnabled(true);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

} else {

jButton1.setEnabled(true);

}

}

}

public void Enlarge() {

if (SelectImage == -1) {

ImageIcon ic1 = new ImageIcon(OpenFilePath);

double w = ic1.getIconWidth();

double h = ic1.getIconHeight();

Image im = ic1.getImage().getScaledInstance((int) (w * (CurrentMultiple + 0.25)),

(int) (h * (CurrentMultiple + 0.25)), Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

} else {

if (SelectImage != flag) {

CurrentMultiple = 1;

}

for (int i = 0; i < ClickedFilePath.size(); i++) {

if (ClickedFilePath.get(i).getName().equals(ImagesNameTF.get(SelectImage).getText())) {

ImageIcon ic1 = new ImageIcon(ClickedFilePath.get(i).getAbsolutePath());

double w = ic1.getIconWidth();

double h = ic1.getIconHeight();

Image im = ic1.getImage().getScaledInstance((int) (w * (CurrentMultiple + 0.25)),

(int) (h * (CurrentMultiple + 0.25)), Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

}

}

}

CurrentMultiple = CurrentMultiple + 0.25;

flag = SelectImage;

}

public void Decrease() {

if (SelectImage == -1) {

ImageIcon ic1 = new ImageIcon(OpenFilePath);

double w = ic1.getIconWidth();

double h = ic1.getIconHeight();

Image im = ic1.getImage().getScaledInstance((int) (w * (CurrentMultiple - 0.25)),

(int) (h * (CurrentMultiple - 0.25)), Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

} else {

if (SelectImage != flag) {

CurrentMultiple = 1;

}

for (int i = 0; i < ClickedFilePath.size(); i++) {

if (ClickedFilePath.get(i).getName().equals(ImagesNameTF.get(SelectImage).getText())) {

ImageIcon ic1 = new ImageIcon(ClickedFilePath.get(i).getAbsolutePath());

double w = ic1.getIconWidth();

double h = ic1.getIconHeight();

Image im = ic1.getImage().getScaledInstance((int) (w * (CurrentMultiple - 0.25)),

(int) (h * (CurrentMultiple - 0.25)), Image.SCALE_DEFAULT);

ImageIcon ic2 = new ImageIcon(im);

getJLabel1().setIcon(ic2);

}

}

}

CurrentMultiple = CurrentMultiple - 0.25;

flag = SelectImage;

}

@SuppressWarnings(“unchecked”)

private void initComponents() {

jToolBar1 = new JToolBar();

jButton1 = new JButton();

jButton2 = new JButton();

jButton3 = new JButton();

jButton4 = new JButton();

jButton5 = new JButton();

jButton6 = new JButton();

jScrollPane1 = new JScrollPane();

jLabel1 = new JLabel();

jToolBar1.setRollover(true);

jButton1.setIcon(new ImageIcon(getClass().getResource(“/images/2.JPG”))); // NOI18N

jButton1.setFocusable(false);

jButton1.setHorizontalTextPosition(SwingConstants.CENTER);

jButton1.setVerticalTextPosition(SwingConstants.BOTTOM);

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton1ActionPerformed(evt);

}

});

jToolBar1.add(jButton1);

jButton2.setIcon(new ImageIcon(getClass().getResource(“/images/1.jpg”)));

jButton2.setFocusable(false);

jButton2.setHorizontalTextPosition(SwingConstants.CENTER);

jButton2.setVerticalTextPosition(SwingConstants.BOTTOM);

jButton2.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton2ActionPerformed(evt);

}

});

jToolBar1.add(jButton2);

jButton3.setIcon(new ImageIcon(getClass().getResource(“/images/3.jpg”))); // NOI18N

jButton3.setFocusable(false);

jButton3.setHorizontalTextPosition(SwingConstants.CENTER);

jButton3.setVerticalTextPosition(SwingConstants.BOTTOM);

jButton3.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton3ActionPerformed(evt);

}

});

jToolBar1.add(jButton3);

jButton4.setIcon(new ImageIcon(getClass().getResource(“/images/4.jpg”))); // NOI18N

jButton4.setFocusable(false);

jButton4.setHorizontalTextPosition(SwingConstants.CENTER);

jButton4.s

必看视频!获取2024年最新Java开发全套学习资料 备注Java

etVerticalTextPosition(SwingConstants.BOTTOM);

jButton4.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton4ActionPerformed(evt);

}

});

jToolBar1.add(jButton4);

jButton5.setIcon(new ImageIcon(getClass().getResource(“/images/5.jpg”))); // NOI18N

jButton5.setFocusable(false);

jButton5.setHorizontalTextPosition(SwingConstants.CENTER);

jButton5.setVerticalTextPosition(SwingConstants.BOTTOM);

jButton5.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton5ActionPerformed(evt);

}

});

jToolBar1.add(jButton5);

jButton6.setIcon(new ImageIcon(getClass().getResource(“/images/6.jpg”))); // NOI18N

jButton6.setFocusable(false);

jButton6.setHorizontalTextPosition(SwingConstants.CENTER);

jButton6.setVerticalTextPosition(SwingConstants.BOTTOM);

jButton6.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton6ActionPerformed(evt);

}

});

jToolBar1.add(jButton6);

jScrollPane1.setViewportView(jLabel1);

GroupLayout layout = new GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jToolBar1, GroupLayout.PREFERRED_SIZE, 382,

GroupLayout.PREFERRED_SIZE)

.addContainerGap(278, Short.MAX_VALUE))

.addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 660, Short.MAX_VALUE));

layout.setVerticalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jToolBar1, GroupLayout.PREFERRED_SIZE,

GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)

.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)

.addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)));

pack();

}

@SuppressWarnings(“empty-statement”)

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {

Decrease();

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

Back();

}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

Forward();

}

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {

Enlarge();

}

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {

jButton6.setEnabled(true);

jButton2.setEnabled(false);

getJButton1().setEnabled(false);

jButton3.setEnabled(false);

jButton4.setEnabled(false);

jButton5.setEnabled(false);

play = new AutoPlay(this);

play.start();

}

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {

play.stop();

jButton2.setEnabled(true);

getJButton1().setEnabled(true);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

jButton5.setEnabled(true);

}

public JLabel getJLabel1() {

return jLabel1;

}

public void setJLabel1(JLabel jLabel1) {

this.jLabel1 = jLabel1;

}

public JButton getJButton1() {

return jButton1;

}

}

PFileSystemView.java


package com.sjsq;

import java.io.File;

import java.io.IOException;

import javax.swing.filechooser.FileSystemView;

/**

  • 创建新文件

  • @author shuijianshiqing

  • @date 2020-09-08 19:26

*/

class PFileSystemView extends FileSystemView {

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

getJButton1().setEnabled(true);

jButton3.setEnabled(true);

jButton4.setEnabled(true);

jButton5.setEnabled(true);

}

public JLabel getJLabel1() {

return jLabel1;

}

public void setJLabel1(JLabel jLabel1) {

this.jLabel1 = jLabel1;

}

public JButton getJButton1() {

return jButton1;

}

}

PFileSystemView.java


package com.sjsq;

import java.io.File;

import java.io.IOException;

import javax.swing.filechooser.FileSystemView;

/**

  • 创建新文件

  • @author shuijianshiqing

  • @date 2020-09-08 19:26

*/

class PFileSystemView extends FileSystemView {

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

[外链图片转存中…(img-VNh6Wg6y-1716409073950)]

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

[外链图片转存中…(img-A3gle1tE-1716409073950)]

  • 29
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
员工工资管理系统是一个常见的软件应用程序,可以帮助公司管理员工的基本信息、薪资、考勤、福利等方面的内容。本文将介绍如何使用 Eclipse+Java+Swing+Mysql 实现员工工资管理系统。 步骤1:创建数据库 首先,我们需要在 Mysql 中创建一个名为 salary 的数据库,并在其中创建三个表:employee、salary_record 和 department。 employee 表用于存储员工的基本信息,包括员工编号、姓名、性别、部门编号等字段。salary_record 表用于存储员工的薪资记录,包括员工编号、发放日期、基本工资、奖金、扣款等字段。department 表用于存储部门的基本信息,包括部门编号、部门名称等字段。 步骤2:创建 Java 项目 在 Eclipse 中创建一个新的 Java 项目,命名为 SalaryManagementSystem。在项目中创建三个包:entity、dao 和 view。 entity 包用于存储实体类,包括 Employee、SalaryRecord 和 Department 等类。dao 包用于存储数据访问对象,包括 EmployeeDao、SalaryRecordDao 和 DepartmentDao 等类。view 包用于存储界面类,包括 LoginFrame、MainFrame 和 AddEmployeeFrame 等类。 步骤3:编写实体类 在 entity 包中创建 Employee、SalaryRecord 和 Department 等类,并为每个类添加相应的属性和方法。例如,Employee 类包括员工编号、姓名、性别、所属部门等属性,以及获取和设置这些属性的方法。 步骤4:编写数据访问对象 在 dao 包中创建 EmployeeDao、SalaryRecordDao 和 DepartmentDao 等类,并实现相应的数据访问方法。例如,EmployeeDao 类包括添加员工、删除员工、更新员工信息、查询员工信息等方法。 步骤5:编写界面类 在 view 包中创建 LoginFrame、MainFrame 和 AddEmployeeFrame 等类,并实现相应的界面和事件处理方法。例如,LoginFrame 类用于显示登录界面,并处理用户登录事件;AddEmployeeFrame 类用于显示添加员工界面,并处理添加员工事件。 步骤6:连接数据库 使用 JDBC 连接 Mysql 数据库,为每个数据访问对象创建相应的连接和预编译语句,实现数据库的增删改查操作。 步骤7:测试程序 在 Eclipse 中运行程序,测试各个功能是否正常。例如,登录功能、员工信息查询功能、添加员工功能等。 总结 本文介绍了如何使用 Eclipse+Java+Swing+Mysql 实现员工工资管理系统。通过实现实体类、数据访问对象和界面类等模块,实现对员工信息、薪资、部门信息等数据的管理。这个项目可以作为 Java 开发入门的练手项目,帮助初学者熟悉 Java 开发、Swing 界面设计和 Mysql 数据库操作等技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值