JTextArea 不可见

Posted

技术标签:

【中文标题】JTextArea 不可见【英文标题】:JTextArea not visible 【发布时间】:2017-10-14 15:17:22 【问题描述】:

这是我的代码。我尽量保持简单。

public class GUI_ADV extends JFrame 
    public static void main(String[] args) 
        NewClass abc = new NewClass();
        abc.setLayout(new FlowLayout());
        abc.setSize(250,450);
        abc.setDefaultCloseOperation(EXIT_ON_CLOSE);
        abc.setVisible(true);
    

还有其他类:

public class NewClass extends JFrame 
    public void NewClass() 
        JPanel cp = new JPanel();
        JTextArea ta = new JTextArea("text",5, 20);
        JScrollPane jp = new JScrollPane( ta );  
        cp.add( jp );
        //message.setLineWrap(true);
        //message.setWrapStyleWord(true);
        JScrollPane scroll = new JScrollPane(ta,5,5);
        //setLayout(new FlowLayout());
        //because it is done in main class
        cp.add(scroll);
        add(cp);
        //setVisible(true);    
        //Its done in main class
     

它不工作。它带有空白的标题栏和空窗口。

【问题讨论】:

如果您认为我还没有尝试过解决方案,请告诉我。 我已从您的问题中删除了不相关的内容。请花一点时间正确格式化您的代码。 你期望得到什么? 抱歉,缺少一行。 在添加之前,您应该真正考虑在组件本身中设置布局。 add 的约束取决于布局,因此在之后设置它可能会产生意想不到的副作用。 【参考方案1】:

构造函数不应为 void 或返回任何东西,否则它将被视为方法而不是构造函数:

public void NewClass() 
//      ^^-------------------------mistake

你必须使用:

public NewClass() 

【讨论】:

以上是关于JTextArea 不可见的主要内容,如果未能解决你的问题,请参考以下文章

JTextArea:居中对齐

如何扫描 JTextArea 的行?

JTextArea 问题

JTextArea 行限制

让 JTextArea 显示固定宽度的字体而不进行抗锯齿

带有 JScrollPane 的 JTextArea 不会滚动一次