[英]How do I align each Label next to its Textfield in Java?
我的代碼-
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
class Test2 extends JFrame {
JPanel panel = new JPanel();
JLabel label1 = new JLabel("Enter 1st Number");
JLabel label2 = new JLabel("Enter 2nd Number");
JLabel label3 = new JLabel("Press to add");
JLabel label4 = new JLabel("Check Answer");
JButton button = new JButton("Press");
JTextField text1 = new JTextField(50);
JTextField text2 = new JTextField(50);
public Test2() {
setTitle("Tutorial");
setVisible(true);
setSize(1080, 720);
setDefaultCloseOperation(EXIT_ON_CLOSE);
text1.setBounds(90,60,86,23);
text2.setBounds(233,60,92,23);
button.setBounds(161,109,89,23);
panel.add(text1);
panel.add(text2);
panel.add(button);
panel.add(label1);
panel.add(label2);
panel.add(label3);
panel.add(label4);
add(panel);
}
public static void main(String[] args) {
Test2 t = new Test2 ();
}
}
我還將編寫代碼來添加 2 個數字,如果用戶輸入字母,我也會拋出異常。 但我希望它們先對齊。 我不能使用 GUI 形式,因為這是為了練習。
不要使用 setBounds()。
使用 4 行 2 列的網格布局
您需要使用具有 2 列和 4 行的 Gridlayout 來使它們像這樣:
class Test2 extends JFrame {
JPanel panel = new JPanel();
JLabel label1 = new JLabel("Enter 1st Number");
JLabel label2 = new JLabel("Enter 2nd Number");
JLabel label3 = new JLabel("Press to add");
JLabel label4 = new JLabel("Check Answer");
JButton button = new JButton("Press");
JTextField text1 = new JTextField(50);
JTextField text2 = new JTextField(50);
public Test2() {
GridLayout gb = new GridLayout(4, 2);
panel.setLayout(gb);
panel.add(label1);
panel.add(text1);
panel.add(label2);
panel.add(text2);
panel.add(label3);
panel.add(button);
panel.add(label4);
add(panel);
setTitle("Tutorial");
setVisible(true);
setSize(250, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
Test2 t = new Test2();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.