如何设置JTextArea的全宽? 我试图获得JTextArea的最大可能大小,并设置它,但它只是做一个更小的JTextArea。
JTextArea textArea = new JTextArea(10, ?);
答案 0 :(得分:2)
你不应该明确地这样做。实现此目的的最佳方法是使用正确的布局管理器。例如,如果您将文本区域放在BorderLayout
的中心,它将获得最大大小:
Panel p = new Panel();
p.setLayout(new BorderLayout());
p.add(new TextArea(), BorderLayout.CENTER);
答案 1 :(得分:2)
您必须将JTextArea放在JScrollPane中。
这是一个有效的例子。
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class SimpleFrame implements Runnable {
@Override
public void run() {
JFrame frame = new JFrame("JScroll Pane Test");
JTextArea txtNotes = new JTextArea();
txtNotes.setText("Hello World");
JScrollPane scrollPane = new JScrollPane(txtNotes);
frame.add(scrollPane);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(new Dimension(800, 600));
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new SimpleFrame());
}
}