在swing消息框中启用文本突出显示

时间:2013-01-06 14:55:27

标签: java swing joptionpane

假设我正在使用以下代码在我的简单swing应用程序中提示错误消息:

JOptionPane.showMessageDialog(null, message, "Error", JOptionPane.ERROR_MESSAGE);

有什么方法可以让用户突出显示文本部分(用于复制/粘贴目的)?

非常感谢。

3 个答案:

答案 0 :(得分:5)

试试这个

 JTextArea textarea= new JTextArea("add your message here");
 textarea.setEditable(true);
 JOptionPane.showMessageDialog(null, textarea, "Error", JOptionPane.ERROR_MESSAGE);

答案 1 :(得分:2)

JOptionPane可以使用任何对象构造,而不仅仅是字符串消息。因此,您可以构造一个JTextArea并将其作为消息传递给JOptionPane。这应该允许复制粘贴。

答案 2 :(得分:0)

如果您反对默认JTextArea显示的白色背景,则可以将JTextArea的背景色设置为与JOptionPane的背景色相同。

String title = "foo";
String message = "Select me";

JTextArea msg = new JTextArea(message);
JOptionPane pane = new JOptionPane(msg, JOptionPane.INFORMATION_MESSAGE);
msg.setBackground(pane.getBackground());
JDialog dialog = pane.createDialog(null, title);
dialog.setVisible(true);