Как разместить по центру фрэйма панель с лог и пасс - Java

Узнай цену своей работы

Формулировка задачи:

Блин запарился) Помогите кто знает как разместить по центру фрейма лог пас и кнопочки.
import javax.swing.*;
import java.awt.*;
 
public class Main {
 
    public static void main(String[] args) {
        JFrame frame = new JFrame();
 
        JLabel label = new JLabel("Loin: ");
        JTextField textField = new JTextField(13);
 
        JLabel label1 = new JLabel("Pass:");
        JPasswordField passwordField = new JPasswordField(10);
 
        JButton button = new JButton("Ok");
        JButton button1 = new JButton("Cancel");
 
        JPanel panel1 = new JPanel();
        JPanel panel2 = new JPanel();
        JPanel panel3 = new JPanel();
        JPanel panel4 = new JPanel();
        JPanel panel5 = new JPanel();
 
        panel1.setBorder(BorderFactory.createLineBorder(Color.RED));
        panel2.setBorder(BorderFactory.createLineBorder(Color.BLACK));
        panel2.setLayout(new BoxLayout(panel2, BoxLayout.Y_AXIS));
        
        panel3.setLayout(new BoxLayout(panel3, BoxLayout.X_AXIS));
        
        panel4.setLayout(new BoxLayout(panel4, BoxLayout.X_AXIS));
        
        panel5.setLayout(new BoxLayout(panel5, BoxLayout.X_AXIS));
 
        panel3.add(label);
        panel3.add(Box.createRigidArea(new Dimension(10, 0)));
        panel3.add(textField);
 
        panel4.add(label1);
        panel4.add(Box.createRigidArea(new Dimension(13, 0)));
        panel4.add(passwordField);
 
        panel5.add(button);
        panel5.add(Box.createRigidArea(new Dimension(20, 0)));
        panel5.add(button1);
        
        panel2.add(panel3);
        panel2.add(panel4);
        panel2.add(panel5);
        panel1.add(panel2);
        
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(490, 550);
        frame.setResizable(false);
        frame.add(panel1);
 
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);

    }
}

Решение задачи: «Как разместить по центру фрэйма панель с лог и пасс»

textual
Листинг программы
public class MainMenu {
    MFrame mainMenu;
    MPanel panel;
    MLabel lLog;
    MTextField logText;
    MLabel lPas;
    MPasswordField passwordField;
    MButton btnOk;
    MButton btnCancel;
 
    public MainMenu() {
        lLog = new MLabel("LOGIN: ");
        logText = new MTextField(13);
        lPas = new MLabel("PASS: ");
        passwordField = new MPasswordField(10);
        btnOk = new MButton("Ok");
        btnCancel = new MButton("Cancel");
        Box one = Box.createHorizontalBox();
        one.add(lLog);
        one.add(logText);
        Box two = Box.createHorizontalBox();
        two.add(lPas);
        two.add(Box.createRigidArea(new Dimension(10, 0)));
        two.add(passwordField);
        Box three = Box.createHorizontalBox();
        three.add(Box.createRigidArea(new Dimension(45, 0)));
        btnOk.setAlignmentX(Component.LEFT_ALIGNMENT);
        three.add(btnOk);
        btnCancel.setAlignmentX(Component.RIGHT_ALIGNMENT);
        three.add(btnCancel);
        Box vert = Box.createVerticalBox();
        vert.add(Box.createRigidArea(new Dimension(0, 200)));
        vert.add(one);
        vert.add(two);
        vert.add(three);
        panel = new MPanel(vert);
        mainMenu = new MFrame("Main Menu", 490, 550, panel);
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.077 из 5
Похожие ответы