首页 > 编程 > Java > 正文

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

2019-11-26 10:02:15
字体:
来源:转载
供稿:网友

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


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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表