Personalizar a caixa de diálogo do JOptionPane

Eu estou aprendendo swing java. O código abaixo é um bloco catch que manipula uma IOException e mostra uma mensagem de erro.

 catch(IOException e)
    {
        System.out.println("IOException");
        JOptionPane.showMessageDialog(null,"File not found",null,
                                    JOptionPane.ERROR_MESSAGE);
    }

Eu estava pensando em declarar e personalizar um JOptionPane dentro do bloco catch como o código abaixo:

JOptionPane jop=new JOptionPane();
        jop.setLayout(new BorderLayout());
        JLabel im=new JLabel("Java Technology Dive Log",
                new ImageIcon("images/gwhite.gif"),JLabel.CENTER);
        jop.add(im,BorderLayout.NORTH);
        jop.setVisible(true);

Mas o problema é que eu não sei como fazer isso aparecer na tela como o método showMessageDialogue faz. Por favor ajude. Desde já, obrigado.

questionAnswers(3)

yourAnswerToTheQuestion