2011-03-21 37 views
0

我已经编写了下面的代码以显示一些信息并通过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

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

+0

非常感谢:)一行额外的代码,并完成它! – blackace 2011-03-21 17:39:42

2

使用JDialog建立自己的对话框,并指定布局,按钮和其他细节,以消除“怪异行为”需要。 JOptionPane是方便的,但不是对话的银弹。