1 书写表白语句的frame(渐入功能)

package com.wanju.blessing;

import java.awt.Color;

import java.awt.Container;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.Toolkit;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.net.URL;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JPanel;

import shen.Panel;

import com.sun.awt.AWTUtilities;

public class ShowFrame extends JFrame {

public ShowFrame() {

this.setSize(600, 500);

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize = this.getSize();

this.setUndecorated(true);

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height - frameSize.height) / 2);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Container container = this.getContentPane();

// AWTUtilities.setWindowOpaque(this, true);

AWTUtilities.setWindowOpacity(this, 0.01f);

container.add(new MyPanel(this));

this.setBackground(null);

this.setVisible(true);

new FadeOut(this).start();

}

public static void main(String[] args) {

ShowFrame showFrame = new ShowFrame();

}

}

class MyPanel extends JPanel{

private Image background;

JFrame frame;

public MyPanel(final JFrame frame){

this.frame = frame;

try {

URL url=Panel.class.getResource("a.jpg");

ImageIcon icon = new ImageIcon(url);

background = icon.getImage() ;

// background = ImageIO.read(new File("D:\\workspace\\maven\\blessing\\src\\shen\\b.jpg"));

this.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

super.mouseClicked(e);

// new FadeOut(MyPanel.this.frame).start();

frame.setVisible(false);

frame.dispose();

}

});

} catch (Exception e) {

e.printStackTrace();

}

}

protected void paintComponent(Graphics g) {

super.paintComponent(g);

g.drawImage(background,0,0,666,666,null);

g.setColor(Color.red);

g.setFont(new Font("", Font.BOLD, 15));

g.drawString("祝愿宝儿永远幸福的像花儿一样", 60, 280);

}

}

class FadeOut extends Thread {

private JFrame wnd;

public FadeOut(JFrame wnd) {

this.wnd = wnd;

}

public void run() {

try {

for (int i = 0; i < 50; i++) {

Thread.sleep(50);

AWTUtilities.setWindowOpacity(wnd, i / 50f);

}

} catch (Exception ex) {

ex.printStackTrace();

}

}

}

2 玫瑰花frame

package shen;

import java.awt.EventQueue;

import javax.swing.JFrame;

import com.sun.awt.AWTUtilities;

public class Frame extends JFrame {

private static final long serialVersionUID = 7517576070147366983L;

public Frame() {

setTitle("PNG透明窗体");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setUndecorated(true);

setSize(666, 666);

setLocationRelativeTo(null);

AWTUtilities.setWindowOpaque(this, false);

setContentPane(new Panel(this));

addMouseListener(new MoveWindow(this));

}

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

@Override

public void run() {

new Frame().setVisible(true);

}

});

}

}

3

package shen;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.Point;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.net.URL;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JPanel;

import com.sun.awt.AWTUtilities;

import shen.Panel.FadeOut;

public class MoveWindow extends MouseAdapter {

private Point last;

private JFrame frame;

public MoveWindow(JFrame frame) {

this.frame = frame;

}

public void mousePressed(MouseEvent e) {

last = e.getLocationOnScreen();

}

public void mouseReleased(MouseEvent e) {

Point point = e.getLocationOnScreen();

Point fPoint = frame.getLocation();

frame.setLocation(fPoint.x + point.x - last.x, fPoint.y + point.y

- last.y);

last = point;

}

}

4

package shen;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.net.URL;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JPanel;

import com.sun.awt.AWTUtilities;

import com.wanju.blessing.ShowFrame;

public class Panel extends JPanel{

private Image background;

JFrame frame = null;

public JFrame getFrame() {

return frame;

}

public void setFrame(JFrame frame) {

this.frame = frame;

}

public Panel(JFrame frame){

this.frame = frame;

try {

// background = ImageIO.read(new File("D:\\workspace\\maven\\blessing\\src\\shen\\window.png"));

// background = ImageIO.read(new File("D:\\workspace\\maven\\blessing\\src\\shen\\b.jpg"));

URL url=Panel.class.getResource("c.jpg");

ImageIcon icon = new ImageIcon(url);

background = icon.getImage() ;

// background = ImageIO.read(new File("D:\\workspace\\maven\\blessing\\src\\shen\\b.jpg"));

this.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

super.mouseClicked(e);

new FadeOut(Panel.this.frame).start();

}

});

} catch (Exception e) {

e.printStackTrace();

}

}

class FadeOut extends Thread {

private JFrame wnd;

public FadeOut(JFrame wnd) {

this.wnd = wnd;

}

public void run() {

try {

for (int i = 50; i > 0; i--) {

Thread.sleep(50);

AWTUtilities.setWindowOpacity(wnd, i / 50f);

}

} catch (Exception ex) {

ex.printStackTrace();

}

wnd.setVisible(false);

wnd.dispose();

new ShowFrame();

}

}

protected void paintComponent(Graphics g) {

super.paintComponent(g);

g.drawImage(background,0,0,666,666,null);

}

}

5 效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

java玫瑰花代码_Java版给爱人表白的玫瑰花程序代码相关推荐

  1. java表白程序玫瑰花_Java版给爱人表白的玫瑰花程序代码

    1 书写表白语句的frame(渐入功能) package com.wanju.blessing; import java.awt.color; import java.awt.container; i ...

  2. 情侣的网站代码java_java版给爱人表白祝福的小项目

    [实例简介] 记得要使用 jdk1.6才可以, 1.7的不支持其中一个语法 [实例截图] [核心代码] blessing ├── blessing │   ├── a.png │   ├── bin ...

  3. c#设计12星座速配软件_星座代码:用vb编一个星座配对的程序代码

    星座代码:用vb编一个星座配对的程序代码 admin 来源: 2020-04-30 10:04:55 阅读() 评论(0) 关于十二星座C#代码不同星座的程序员写起代码来分别是什么样子的?求你的计算生 ...

  4. java 数独算法_java版数独游戏核心算法(一)

    之前学习javascript时用javascript写过一个数独游戏,最近看了一点java的内容,于是就心血来潮想搞一个java版的数独游戏. 现在将全部代码分享出来和大家学习交流,当然代码中有着各种 ...

  5. Java不重复的随机数获取_java获取 1--N 的不重复随机数程序代码

    文章分享一篇关于java获取 1--N 的不重复随机数程序代码,有感兴趣的同学可以参考一下.  代码如下 复制代码 import java.util.ArrayList; import java.ut ...

  6. java 构造块_java中构造方法、普通块、静态代码块、构造块的执行顺序

    静态块.构造块.构造方法.普通块 静态块:在类中用"{}"括号括起来,并在括号前用static修饰的块为静态块;静态块在类加载时候被调用,并且在整个生命中只调用一次 同步块 使用s ...

  7. matlab滤波器 代码,自适应滤波器设计及Matlab实现附程序代码整理版.doc

    自适应滤波器设计及Matlab实现附程序代码整理版.doc 维纳自适应?滤波器设计?及Matl?ab实现 摘 要 本文从随机?噪声的特性?出发,分析了传统?滤波和自适?应滤波基本?工作原理和?性能,以 ...

  8. java如何编写spi接口_软件模拟SPI接口程序代码(4种模式)

    软件模拟SPI接口程序代码(4种模式) SPI协议简介 SPI的通信原理很简单,一般主从方式工作,这种模式通常有一个主设备和一个或多个从设备,通常采用的是4根线,它们是MISO(数据输入,针对主机来说 ...

  9. matlab中存档算法代码,MATLAB 智能算法超级学习手册中程序代码

    [实例简介] MATLAB 智能算法超级学习手册中程序代码 [实例截图] [核心代码] dc90ef43-7920-434e-bdb8-0636c31c0b44 └── MATLAB 智能算法超级学习 ...

最新文章

  1. Java SE 8 在并发工具方面的加强
  2. python中__str__与__repr__
  3. [职业生涯]你和你的工作
  4. [转] AKKA简介
  5. Python第十课 网络管理
  6. arm的LDMFD--4种堆栈方式
  7. php oracle 无查询结果,php - Oracle Insert查询不起作用,也不会抛出任何错误 - 堆栈内存溢出...
  8. 服务器端如何开启GZIP压缩功能
  9. RPC、RMI与MOM与组播 通信原理 .
  10. python socket 大文件_python之socket运用之传输大文件
  11. 准备了2个月零21天,面试字节跳动挂在了第三面JVM上
  12. 打击犯罪(信息学奥赛一本通-T1386)
  13. 线段树专辑—— pku 3468 A Simple Problem with Integers
  14. [个人原创]关于java中对象排序的一些探讨(一)
  15. 代码比对方法/代码比对工具
  16. DX 系列之 ComboBoxEdit
  17. 表面缺陷检测:机器视觉检测技术
  18. win10 软路由_千元完美的家用低功耗软路由:J4125 迷你电脑GK41开箱体验!又是播放器,也是服务型AIO!...
  19. 获取Android_Studio模拟器root权限的方法
  20. 51单片机学习2——DS1302制作简易数码管电子时钟

热门文章

  1. 大早起的起来就上网瞎逛,发现了就记录下来,也算心理安慰
  2. 【STM32】通过RTThread驱动W25QXXX
  3. 【2023杰理科技提前批笔试题】~ 题目及参考答案
  4. 云效应用交付平台 AppStack 之发布流水线
  5. 查看Ubuntu的版本号,并添加国内镜像源
  6. 2022/09/20、21 day09/10:JavaScript(三)
  7. poi ppt 作者属性 修改_Poi PPT PPTX 处理 [生产环境使用]
  8. Opencv:如何调用IP摄像头
  9. Ceph剖析:Leader选举
  10. java导出excel 方式_java导出Excel通用方法