向JOptionPane添加图标会将添加的面板推出视图

时间:2016-02-17 00:46:08

标签: java swing joptionpane imageicon

我在JOptionPane中添加了一个图标,该图标也添加了JPanel。当默认的咖啡图标出现时,JPanel完全可见。用我自己的图标替换它会将JPanel推到右边,到目前为止一些字段不可见。我已经尝试缩放图标,但是我是否将其缩放1/2,1 / 3,1 / 5或1/7,尽管图像本身的大小发生变化,但JOptionPane为其分配的空间量仍然不受影响推动我的可怜的JPanel陷入寒冷。在我放弃并编写自定义对话框之前,我很好奇:我是否忽略了一些设置让我的JPanel从我的图标宽度结束开始?

public void displayDialog(){
    Image img = icon.getImage();
    BufferedImage bi = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_ARGB);
    Graphics g = bi.createGraphics();
    g.drawImage(img, 0, 0, img.getWidth(null)/7, img.getHeight(null)/7, null);
    ImageIcon newIcon = new ImageIcon(bi);

    Object[] options = {"Cancel", "Done"};// Cancel returns 0; Done returns 1
    int n = JOptionPane.showOptionDialog(null, mainPanel,"New Certification Information",
            JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);

    if(n == 1){
        //done option:  expand later
    }
}
顺便说一句:不要记得以前在这里问过一个问题而且不知道我什么时候会再这样,而我在这里......我经常使用这个网站。你们都对我很有帮助,我非常感激。

0 个答案:

没有答案