框架创建者方法

时间:2017-09-19 14:04:11

标签: java methods frame

我正在尝试弹出一个框架,上面有一个可怕的图像。我问一个使用JOptionPane的问题,如果他们说他们很容易被吓到,它会弹出一个小丑的形象或某些东西。 问题是,当我尝试创建一个方法来创建一个JFrame它不会工作。当我尝试调用该方法时,它不起作用。 这是代码

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.*;

public class Boo {
public static void main(String[] args) throws IOException {
    int x = JOptionPane.showConfirmDialog(null,"Do you consider yourself 
easily scared?",null,JOptionPane.YES_NO_OPTION);
    if(x == JOptionPane.YES_OPTION){    
    String fileString = 
"C:\\Users\\20jdominiecki\\Downloads\\68b8a6e159169897cc01d8d34d184962.jpg";
    frameCreator();
    }
    int y = JOptionPane.showConfirmDialog(null,"Like what you 
see?",null,JOptionPane.YES_NO_OPTION);
    if (y == JOptionPane.NO_OPTION)
    {
    String fileString = "C:\\Users\\20jdominiecki\\Downloads\\doggo.jpg";    
    frameCreator();    
    }
}    
public void frameCreator(String fileString) throws IOException{

    File file = new File(fileString);
    BufferedImage image = ImageIO.read(file);
    JLabel label = new JLabel(new ImageIcon(image));
    JFrame f = new JFrame();
    f.getContentPane().add(label);
    f.pack();
    f.setLocation(0,0);
    f.setVisible(true);


}

}

2 个答案:

答案 0 :(得分:0)

问题是您在方法中创建了JFrame,一旦完成,JFrame就会被删除。 试试这个。

JFrame f;
    public void frameCreator(String fileString) throws IOException{

    File file = new File(fileString);
    BufferedImage image = ImageIO.read(file);
    JLabel label = new JLabel(new ImageIcon(image));
    f = new JFrame();
    f.getContentPane().add(label);
    f.pack();
    f.setLocation(0,0);
    f.setVisible(true);


}

答案 1 :(得分:0)

对于给您带来的不便,我深表歉意。我没有正确地调用该方法。调用方法时,我没有在括号中输入进入方法的字符串。我通过使用frameCreator(fileString);

调用方法来修复此问题

对不起伙计们!