0
public class Main {

    private static void createAndShowGUI()  {

        JFrame frame1 = new JFrame("FINAL YEAR PROJECT VER 1.0");

        frame1.setSize(500,500);
        frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


        FlowLayout experimentLayout = new FlowLayout();
        experimentLayout.setAlignment(FlowLayout.CENTER);
        frame1.setLayout(experimentLayout);

        JTextArea jtextarea = new JTextArea(200,200);
        JScrollPane scrollingArea = new JScrollPane(jtextarea);

        frame1.getContentPane().add(jtextarea);
        frame1.getContentPane().add(scrollingArea, FlowLayout.CENTER);

         jtextarea.setText("Welcome to Document-Query Similarity System Based On Weblogs");



        frame1.setVisible(true);
    }


    public static void main(String[] args) {
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
}

我正在尝试setText()使用JTextarea. 但是,该字符串不显示。我错过了什么?

4

2 回答 2

3

它在那里,只是使文本区域更小。就像是:

JTextArea jtextarea = new JTextArea(20,20);

使用它的当前大小,您看不到文本。您无法滚动到文本的部分原因是您添加文本区域和滚动条的方式不正确。一个更好的方法是:

    frame1.setLayout(new BorderLayout());
    ...
    //delete the addition of the textarea to the frame, you already put it in the scroll pane.
    frame1.getContentPane().add(scrollingArea, BorderLayout.CENTER);
于 2011-04-05T18:06:18.807 回答
1

代替:

JTextArea jtextarea = new JTextArea();

代替:

JTextArea jtextarea = new JTextArea(200, 200);

您的构造函数的文档说参数不是像素:

构造一个具有指定行数和列数的新空 TextArea。创建一个默认模型,初始字符串为空。

于 2011-04-05T18:05:46.453 回答