基本上我们已经学过Java的基础知识,但我们还没有学过Java中的GUI。因此,在过去的两天里,我一直试图让我的文字从上到下显示而没有成功。有人可以帮忙重新安排吗?我想要#34;注册号码"显示在"用户名"下方。这是代码:
function showHide() {
var div = document.getElementById("hidden_div");
if (div.style.display == 'none') {
div.style.display = '';
} else {
div.style.display = 'none';
}
}
答案 0 :(得分:2)
修改您的layouts和组件:您已使用流布局向内容窗格添加了没有布局的面板,然后再次将标签添加到内容窗格。 FlowLayout 将组件排列在一起。 SpringLayout 或 GridBagLayout 最符合您的需求。这是一个使用 GridLayout :
的简单示例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();
}
}
答案 1 :(得分:1)
如果您正在使用Java Swing,我认为您已导入它,您可以转到“设计”选项卡并在那里重新排列。
替代方法是使用AWT - 这是比Swing更老和更糟的技术,在这种情况下,您不能使用FlowLayout - 它将所有组件放入一行。 使用BoxLayout,GridBagLayout,GridLayout,GroupLayout甚至SpringLayout。 有关布局的更多信息:https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html
如果您有任何疑问,请询问。 :)