N
Nickland
Gast
Hallo,
ich hoffe ihr könnt mir helfen... Ich möchte bei einem JOptionPane die Hintergrundfarbe ändern, habe dazu den JOptionPane schon eigens zusammengebaut (s. Code) und in einen JDialog gepackt. Leider habe ich, wenn ich nicht die Standardfarbe wähle, um den angezeigten Text noch einen Rand in der Standardfarbe... Hab auch schon etliches versucht, diesen auch noch umzufärben, das gelingt aber nicht... Hat das vielleicht auch irgendwas mit "iconTextGap" zu tun? Der steht nämlich bei der Message auf 4...
Lieben Gruß,
nick
ich hoffe ihr könnt mir helfen... Ich möchte bei einem JOptionPane die Hintergrundfarbe ändern, habe dazu den JOptionPane schon eigens zusammengebaut (s. Code) und in einen JDialog gepackt. Leider habe ich, wenn ich nicht die Standardfarbe wähle, um den angezeigten Text noch einen Rand in der Standardfarbe... Hab auch schon etliches versucht, diesen auch noch umzufärben, das gelingt aber nicht... Hat das vielleicht auch irgendwas mit "iconTextGap" zu tun? Der steht nämlich bei der Message auf 4...
Lieben Gruß,
nick
Code:
private static Color hintergrundfarbe = Color.YELLOW;
{...}
public static void schliessen()
{
JOptionPane jopSchliessen = new JOptionPane();
final JDialog jdgSchliessen = jopSchliessen.createDialog("");
jdgSchliessen.getContentPane().setBackground(hintergrundfarbe);
JLabel lblSchliessen = new JLabel("Möchten Sie den net-coding Commander wirklich schliessen?");
lblSchliessen.setOpaque(true);
lblSchliessen.setBackground(hintergrundfarbe);
// JOptionPane einstellen
jopSchliessen.setBackground(hintergrundfarbe);
// Knoepfe auf JOptionPane
JButton butJa = new JButton("Ja");
butJa.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
JButton butNein = new JButton("Nein");
butNein.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jdgSchliessen.dispose();
}
});
Object[] YES_NO_OPTION = new Object[2];
YES_NO_OPTION[0] = butJa;
YES_NO_OPTION[1] = butNein;
jopSchliessen.setMessage(lblSchliessen);
jopSchliessen.setMessageType(JOptionPane.QUESTION_MESSAGE);
jopSchliessen.setOptions(YES_NO_OPTION);
// Hintergrundfarbe in JOptionPane einstellen
for (int i = 0; i < jopSchliessen.getComponentCount(); i++)
jopSchliessen.getComponent(i).setBackground(hintergrundfarbe);
// Dialogfenster einstellen
jdgSchliessen.setTitle("net-coding Commander");
jdgSchliessen.setIconImage(Toolkit.getDefaultToolkit().getImage("./data/datei.gif"));
jdgSchliessen.pack();
jdgSchliessen.setLocationRelativeTo(oberflaeche);
jdgSchliessen.setModal(true);
jdgSchliessen.setVisible(true);
jdgSchliessen.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent event)
{
jdgSchliessen.dispose();
}
});
}