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。有人知道我做错了吗?
答案 0 :(得分:4)
不要设置和删除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()
答案 1 :(得分:1)
如果您有布局,可以使用new JTextArea(24, 32)
和pack()
来安排。
答案 2 :(得分:0)
设置JTextArea的大小
chatHistory.setSize(new Dimension(width,height));