2
public class DailogDemo 
{

private JDialog chatdailog;
private JTextArea chatHistory;
private JScrollPane mScrollMessage; 

DailogDemo()
{
chatdailog=new JDialog();
chatdailog.setSize(300, 400);

chatHistory=new JTextArea();
chatHistory.setPreferredSize(new Dimension(150,100));
mScrollMessage=new JScrollPane();
mScrollMessage.add(chatHistory);
mScrollMessage.setBounds(4, 10, 150, 100);
mScrollMessage.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
chatdailog.add(mScrollMessage);
chatdailog.show();
}

public static void main(String args[])
{
    new DailogDemo();
}
}

在上面的代码中,我无法在 JScrollPane 中看到 JTextArea。有人知道我做错了什么吗?

4

3 回答 3

4
  • 使用JTextArea(整数行,整数列)

  • 不要设置和删除chatdailog.setSize(300, 400);

  • 不要设置和删除chatHistory.setPreferredSize(new Dimension(150,100));

  • 不要设置和删除mScrollMessage.add(chatHistory);使用JScrollPane scrollPane = new JScrollPane(textArea);

  • 不要设置和删除mScrollMessage.setBounds(4, 10, 150, 100);

  • 不要设置和删除chatdailog.show();使用chatdailog.setVisible(true);

  • chatdailog.pack()在行前添加代码行chatdailog.setVisible(true);

  • JDialog如果这个包裹有另一个chatdailog.setVisible(true);父母invokeLater()

于 2012-07-25T14:00:41.267 回答
1

如果你有一个布局,你可以使用new JTextArea(24, 32)andpack()得到一个很好的安排。

于 2012-07-25T13:59:43.700 回答
0

为 JTextArea 设置大小

chatHistory.setSize(new Dimension(width,height));
于 2012-07-25T12:28:56.987 回答