我能';在JAVA中重新排列文本

我能';在JAVA中重新排列文本,java,swing,user-interface,Java,Swing,User Interface,基本上,我们已经学习了Java的基础知识,但是我们没有学习Java中的GUI。所以在过去的两天里,我一直试图让我的文本从上到下显示,但没有成功。有人能帮忙重新安排吗?我希望“注册号”出现在“用户名”下面。代码如下: package management; import javax.swing.*; import java.awt.*; public class Library extends JFrame { JFrame frame = new JFrame(); JPan

基本上,我们已经学习了Java的基础知识,但是我们没有学习Java中的GUI。所以在过去的两天里,我一直试图让我的文本从上到下显示,但没有成功。有人能帮忙重新安排吗?我希望“注册号”出现在“用户名”下面。代码如下:

package management;

import javax.swing.*;
import java.awt.*;

public class Library extends JFrame {
    JFrame frame = new JFrame();
    JPanel panel = new JPanel();
    JLabel label1 = new JLabel();
    JLabel label3 = new JLabel();
    JLabel label2 = new JLabel();

    Library() {
        super("WELCOME TO KCA LIBRARY");

        setLayout(new FlowLayout());
        setBounds(500,500,500,500);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Container con = this.getContentPane();
        con.add(panel);

        panel.setLayout(null);

        label1=new JLabel("USERNAME");
        label1.setToolTipText("Enter Your Username");

        label2=new JLabel("REGISTRATION NUMBER");
        label2.setToolTipText("Enter Your Registration no");
        label2.setVerticalTextPosition(JLabel.BOTTOM);

        label3 = new JLabel("PASSWORD");
        label3.setToolTipText("Enter Your Password");

        add(label1);
        add(label2);
        add(label3);

        setVisible(true);  
    }

    public static void main(String[]args) {
        new Library();
    }
}

如果您使用的是Java Swing,我认为您是因为您已经导入了它,那么您可以转到“设计”选项卡并在那里重新设置它的范围

另一种方法是使用AWT——这是一种比Swing更古老、更糟糕的技术,在这种情况下,您不能使用FlowLayout——它将所有组件放在一行中。 使用BoxLayout、GridBagLayout、GridLayout、GroupLayout甚至SpringLayout。 有关布局的更多信息,请参见:

如果您有任何问题,请询问。:)

修改和组件:您已将一个没有布局的面板添加到具有flow布局的内容窗格中,然后再次将标签添加到内容窗格中。将零部件彼此相邻排列。手术室最符合您的需要。这是一个简单的示例,使用:


“我一直在尝试使我的文本从上到下显示…”您的确切意思是什么?我希望用户名首先显示,注册号显示在用户名下方,密码显示在用户名下方,注册号如下所示,因为您使用的是
FlowLayout
所有组件都显示在一行中。看看这个:将主题改为“我不能在JAVA中重新排列控件”或“我不能在JAVA中重新排列控件”,添加“swing”标记谢谢。很高兴知道这有助于解决您的问题。如果是,请毫不犹豫地接受答案:)为什么我添加一个按钮时会出现这样的情况。我尝试了所有的布局,但没有任何效果。甚至改变了位置。我不想打扰你们,但这是紧急的。再次试用,效果良好。非常感谢您的链接很高兴能帮助您!:)祝你工作顺利!
package management;

import javax.swing.*;
import java.awt.*;

public class Library extends JFrame {
    JFrame frame = new JFrame();
    JPanel panel = new JPanel();
    JLabel label1 = new JLabel();
    JLabel label3 = new JLabel();
    JLabel label2 = new JLabel();

    Library(){
        super("WELCOME TO KCA LIBRARY");

        setBounds(500, 500, 500, 500);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Container con = this.getContentPane();
        con.add(panel);

        panel.setLayout(new GridLayout(3, 1));

        label1 = new JLabel("USERNAME");
        label1.setToolTipText("Enter Your Username");

        label2 = new JLabel("REGISTRATION NUMBER");
        label2.setToolTipText("Enter Your Registration no");

        label3 = new JLabel("PASSWORD");
        label3.setToolTipText("Enter Your Password");

        panel.add(label1);
        panel.add(label2);
        panel.add(label3);

        setVisible(true);
    }

    public static void main(String[]args){
        new Library();
    }

}