java 如何向JFrame添加文本?

smdnsysy  于 2023-01-15  发布在  Java
关注(0)|答案(6)|浏览(588)

因此,我使用Eclipse WindowBuilder设计了一个JFrame。这个特定的框架是一条错误消息,指出用户提供了无效的凭据。我添加了一个按钮来退出该框架,现在我需要显示实际的错误消息“指定的登录凭据无效。请提供有效的凭据”。
我做了一些搜索,每个人都说要使用JLabel,但当我创建JLabel并输入文本时,没有自动换行或任何东西,所以我无法将标签放入框架中。
简单地在JFrame的中心显示消息的简单方法是什么?

yrefmtwq

yrefmtwq1#

要创建文本标签:

JLabel label1 = new JLabel("Test");

要更改标签中的文本:

label1.setText("Label Text");

最后清除标签:

label1.setText("");

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

nue99wik

nue99wik2#

与其浪费时间设计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);
    }
}

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

zdwk9cvp

zdwk9cvp3#

当我创建JLabel并向其中输入文本时,没有自动换行或其他任何操作
HTML格式可以用来在任何提供样式文本的Swing组件中实现自动换行。例如,如本答案所示。

klsxnrf1

klsxnrf14#

将文本添加到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);
9avjhtql

9avjhtql5#

可以添加包含以下内容的多行标签:

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

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

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

q5iwbnjs

q5iwbnjs6#

JOptionPane.showMessageDialog(null,"Welcome To my Game",al,JOptionPane.WARNING_MESSAGE);

效果良好

相关问题