如何将文本添加到JFrame?

时间:2012-12-01 18:53:52

标签: java swing jframe windowbuilder

所以我正在使用Eclipse WindowBuilder设计一个JFrame。此特定帧是一条错误消息,指出用户提供了无效凭据。我添加了一个退出框架的按钮,我现在需要显示实际的错误消息"指定的登录凭据无效。请提供有效的凭证。"

我做了一些搜索,每个人都说使用JLabel,但是当我创建JLabel并输入文本时,没有任何文字包装或任何东西,所以我不能在我的框架内贴上标签。

在JFrame的中心简单显示消息的简单方法是什么?

5 个答案:

答案 0 :(得分:9)

为文字创建标签:

JLabel label1 = new JLabel("Test");

更改标签中的文字:

label1.setText("Label Text");

最后清除标签:

label1.setText("");

您需要做的就是将标签放在您的布局中,或者您正在使用的任何布局系统中,然后将其添加到JFrame ...

答案 1 :(得分:4)

您可以使用默认模式下的JFrame,而不是浪费时间设计JOptionPane只显示错误消息:

import javax.swing.JOptionPane;

public class Main {

    public static void main(String[] args) {
        JOptionPane.showMessageDialog(null, "Your message goes here!","Message", JOptionPane.ERROR_MESSAGE);
    }
}

enter image description here

P.S。如果你想学习Swing,请停止使用Windowbuilder。

答案 2 :(得分:3)

  

当我创建我的JLabel并输入文本时,没有wordwrap或任何东西

HTML格式可用于在任何提供样式文本的Swing组件中导致自动换行。例如。如this answer中所示。

答案 3 :(得分:0)

您可以使用以下内容添加多行标签:

JLabel label = new JLabel("My label");

label.setText("<html>This is a<br>multline label!<br> Try it yourself!</html>");

从这里开始,只需使用add()方法将标签添加到框架中,就可以了!

答案 4 :(得分:0)

将文本添加到JFrame的最简单方法:

JFrame window = new JFrame("JFrame with text"); 
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setLayout(new BorderLayout());
window.add(new JLabel("Hello World"), BorderLayout.CENTER);
window.pack();
window.setVisible(true);
window.setLocationRelativeTo(null);