Java版给爱人表白的玫瑰花程序代码

时间:2019-04-14
本文章向大家介绍Java版给爱人表白的玫瑰花程序代码,主要包括Java版给爱人表白的玫瑰花程序代码使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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 效果图:


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