Изображение JOptionPane
Для тех, у кого есть проблема с изображением, я нашел / адаптировал решение.В моей системе я получил такой результат, независимо от того, использовал ли я решение UIManager, как другие опубликовали, или сделал JDialog и использовал jd.getContentPane (). SetBackground (Color.white).Итак, вот обходной путь, который я придумал, где вы рекурсивно просматриваете каждый компонент в JOptionPane и устанавливаете цвет фона каждого JPanel:
private void getComponents(Container c){
Component[] m = c.getComponents();
for(int i = 0; i < m.length; i++){
if(m[i].getClass().getName() == "javax.swing.JPanel")
m[i].setBackground(Color.white);
if(c.getClass().isInstance(m[i]));
getComponents((Container)m[i]);
}
}
В вашем коде, где вы хотите, чтобы сообщение всплыло- что-то вроде:
pane = new JOptionPane("Your message here",
JOptionPane.PLAIN_MESSAGE ,JOptionPane.DEFAULT_OPTION);
getComponents(pane);
pane.setBackground(Color.white);
jd = pane.createDialog(this, "Message");
jd.setVisible(true);
Где JOptionPane pane
и JDialog jd
были ранее созданы.Надеюсь, это поможет любому, у кого была такая проблема.