zoukankan      html  css  js  c++  java
  • 关于Frame加背景的那点事?

     最近新生问我一个问题,继承自Frame(可不是继承自JFrame)的框架怎样添加背景图片,

    真够坑的,当时还真懵了,废话少说直接上代码:

     

    import java.awt.*;

    import java.awt.event.*;

    import java.awt.image.*;

    import java.io.File;

    import java.io.IOException;

    import javax.imageio.ImageIO;

    import javax.swing.JFrame;

     

    public class myFrame extends Frame {

    public myFrame() {

    this.setBounds(300, 300, 1000, 800);

    // this.setBackground(Color.red);

    this.setVisible(true);

    }

    public void paint(Graphics g) {//重写paint方法

            super.paint(g);

            BufferedImage image;

            try {

                image = ImageIO.read(new File("/Users/feifei/Desktop/1.png"));//注意地址的形式,笔者是在Mac上写的

                g.drawImage(image, 0, 0, null);

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

     

    }

    class m_method{

      public static void main(String[] args) {

        myFrame yFrame = new myFrame();

        yFrame.addWindowListener(new WindowAdapter() {

          public void windowClosing(WindowEvent e) {

            System.exit(0);

          }

        });

      }

    }

    能看的出来,解决的方案就是,重写paint方法(图片的地址是Mac上的地址,只需改成Windows上的就行了),问题就解决了!

  • 相关阅读:
    算法7-9:有向图搜索算法
    STM32W108无线传感器网络节点自组织与移动智能体导航技术
    no matching provisioning profiles found
    数组处理函数
    字符串相关函数整理
    [Other]来做一个微信打印机吧 -- 微信打印的设计思路參考
    [WF4.0 实战] 事件驱动应用
    OpenCV——RGB三通道分离
    泛型的使用
    JDBC使用步骤
  • 原文地址:https://www.cnblogs.com/feiyafeiblog/p/4960211.html
Copyright © 2011-2022 走看看