javaSE项目一:简易电子相册
来源:互联网 发布:python遗传算法库 编辑:程序博客网 时间:2024/04/29 16:17
javaSE项目一:简易电子相册
【非原创代码,改装升级而来】
一. 整个项目图:
编程软件:Myeclipse2014
技术:javaSE中Swing
时间:2017年10月31日-2017年10月31日
二. 结果预览图:
三. 源代码:
package photo;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.event.*;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import javax.swing.*;
/**
*
* 步骤: 1、创建窗体 JFrame 2、自定义继承 JPanel(画板) 3、添加组建 4、添加监听器
*/
public class albumDemo {
// 程序的入口方法
public static voidmain(String[] args) {
// 在内存中创建窗体对象
JFrame jfm = newJFrame();
// 创建窗体大小
jfm.setSize(640,400);
// 创建面板并添加到面板上
Panel panel = newPanel();
jfm.add(panel);
// 去窗口边框修饰
jfm.setUndecorated(true);
// 设置窗体居中
jfm.setLocationRelativeTo(null);
// 设置关闭窗体时关闭程序
jfm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 设置窗体可见
jfm.setVisible(true);
}
}
// 定义面板
class Panel extends JPanel {
/*** 序列化标识 */
private static final longserialVersionUID = -111L;
JLabel imgLabel;
String imgName;
BufferedImage bg;
Image image;
public voidpaintComponent(Graphics g) {
Graphics2D g2 =(Graphics2D) g;
g2.drawImage(bg.getScaledInstance(680,400, Image.SCALE_DEFAULT), 0, 0,
680,400, null);
}
public Panel() {
setLayout(null);
try {
bg =ImageIO.read(Panel.class.getResource("bg.jpg"));
} catch (Exceptione) {
throw newRuntimeException("图片加载失败");
}
imgName ="0.gif";
// 添加Jlabel
image = newImageIcon(this.getClass().getResource(imgName)).getImage()
.getScaledInstance(430,100,Image.SCALE_DEFAULT);
imgLabel = newJLabel(new ImageIcon(image));
// 设置位置
imgLabel.setBounds(32,33, 430, 300);
this.add(imgLabel);
// 添加下一张按钮
addNextButtom();
// 添加退出按钮
addExitButtom();
}
private voidaddExitButtom() {
JButton ExitBtn =new JButton("退出");
ExitBtn.setBounds(510,120, 75, 25);
this.add(ExitBtn);
ExitBtn.addMouseListener(newMouseAdapter() {
@Override
public voidmousePressed(MouseEvent e) {
int r= JOptionPane.showConfirmDialog(null, "确定要退出?", "退出",
JOptionPane.YES_NO_CANCEL_OPTION);
if (r== 0)
System.exit(0);
}
});
}
int index = 1;
private voidaddNextButtom() {
JButton nextBtn =new JButton("下一张");
nextBtn.setBounds(510,80, 75, 25);
this.add(nextBtn);
// 添加监听事件
nextBtn.addMouseListener(newMouseAdapter() {
@Override
public voidmousePressed(MouseEvent e) {
imgName= ++index + ".jpg";
if(index == 5)
index= 0;
image= new ImageIcon(this.getClass().getResource(imgName))
.getImage().getScaledInstance(430,300,
Image.SCALE_DEFAULT);
imgLabel.setIcon(newImageIcon(image));
}
});
}
}
-------------------------------------------------------------
本内容由安康学院"雨季"原创!
- javaSE项目一:简易电子相册
- 电子相册项目
- Qt 简易电子相册
- 简易的电子相册
- 会声会影如何制作简易电子相册
- JAVASE之简易IO
- 基于TQ2440的电子相册项目实现
- arm电子相册项目——启动加载篇startup.s
- arm电子相册项目——主函数篇main.c
- arm电子相册项目——led模块篇led.c
- arm电子相册项目——按键模块篇led.c
- arm电子相册项目——串口模块篇uart.c
- SSH框架练习简易的B2C商城项目(一)
- 电子相册系统(一)Dao的组件设计
- Javase小项目尝试
- JavaSE 扫雷项目展示
- javase小项目
- JavaSE小项目(小游戏)
- 17.10.31日报
- 刷题#R4
- 配置wrod
- 零基础学图形学(3) 几何知识——坐标系统
- java代码连接数据库
- javaSE项目一:简易电子相册
- Hbase 配置流程
- 【百日JavaScript系列】2017.10.27_认识Html中java的调用
- nodejs koa2的基础使用
- OpenStack公共组件oslo之二——oslo.utils
- 变量可见性和volatile, this逃逸, 不可变对象, 以及安全公开
- Mac 配置dns服务器,实现拦截
- 移动MAS短信接口工具类
- 深入理解java中enum枚举