当显示的消息的文本大小增加时,在jOptionPane中正确显示按钮

时间:2011-03-21 14:55:06

标签: java swing joptionpane

我已经编写了下面的代码来显示一些信息,并通过jOptionPane从用户那里得到回应。现在提供给此方法的文本随着时间的推移而增长,并且在文本量增加的一段时间之后,jOptionPane行为很奇怪,有时不显示按钮,整个面板被文本占用,并且按钮不可访问。

我该如何解决这个问题?

 public void jOptionPane1(agent, text) {

            if (GetParameter("MessagesCheck")) {

                String[] choices =  ["Yes", "No", "Default"]
                JTextArea textArea = new JTextArea(text);
                textArea.setColumns(125);
                textArea.setLineWrap(true); textArea.setWrapStyleWord(true);
                int response = JOptionPane.showOptionDialog(null,textArea,"choices",0,JOptionPane.INFORMATION_MESSAGE,null,choices,choices[2]);
                }
      }

2 个答案:

答案 0 :(得分:2)

使用JDialog构建自己的对话框,并指定布局,按钮和消除“怪异行为”所需的任何其他细节。 JOptionPane很方便,但不是对话的灵丹妙药。

答案 1 :(得分:2)

将JScrollPane添加到选项窗格。 setLineWrap设计为在将文本区域添加到滚动窗格时使用。