Oopactivities14 15
Oopactivities14 15
COLLEGE OF ENGINEERING
Lucban, Quezon
Prepared by:
ALAY, MICO
BSCPE IIA - GE
Presented to:
ENGR. MADONNA CASTRO
PROGRAMMING ACTIVITY 14
SOURCE CODE:
import javax.swing.*;
import java.awt.*;
public class Frames extends JFrame { // Subclassing the Frames from JFrame
directly instead of
// constructing an instance from the
JFrame class. Allows
// overriding and better
customization.
public Frames() {
setTitle("Student Registration Form");
setSize(800, 800);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
// Adding different sections of the form to the panel inside the frame
mainPanel.add(new HeaderPanel());
mainPanel.add(Box.createRigidArea(new Dimension(0, 10))); // 10 px
vertical gap
mainPanel.add(new UserInfoPanel());
mainPanel.add(Box.createRigidArea(new Dimension(0, 10)));
mainPanel.add(new MoreInfoPanel());
mainPanel.add(Box.createRigidArea(new Dimension(0, 10)));
mainPanel.add(new ButtonPanel());
import javax.swing.*;
import java.awt.*;
public HeaderPanel() {
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0)); // 10px at
bottom and top
add(universityLabel);
add(addressLabel);
add(collegeLabel);
add(Box.createRigidArea(new Dimension(0, 10))); // 10px vertical gap
add(regFormLabel);
}
import javax.swing.*;
import java.awt.*;
public UserInfoPanel() {
setLayout(new GridLayout(0, 2, 5, 5)); // 0 rows, 2 columns, 5px of
spacing in both axes.
// Text fields
usernameField = new JTextField();
passwordField = new TextField(15);
passwordField.setEchoChar('#');
confirmPasswordField = new TextField(15);
confirmPasswordField.setEchoChar('#');
nameField = new JTextField();
dobField = new JTextField();
ageField = new JTextField();
citizenshipField = new JTextField();
religionField = new JTextField();
contactField = new JTextField();
fatherNameField = new JTextField();
motherNameField = new JTextField();
// Drop-downs
yearBox = new JComboBox<>(new String[] { "--Select your Year--", "I",
"II", "III", "IV" });
casBox = new JComboBox<>(new String[] { "--Select your Course &
Section--", "BSCE-GA", "BSCE-GB", "BSCPE-GE",
"BSCPE-GF", "BSECE-GG", "BSECE-GH", "BSEE-GI", "BSEE-GJ",
"BSIE-GK", "BSIE-GL", "BSME-GM", "BSME-GN" });
// Adding components
add(new JLabel("Username:"));
add(usernameField);
add(new JLabel("Password:"));
add(passwordField);
add(new JLabel("Confirm Password:"));
add(confirmPasswordField);
add(new JLabel("Name:"));
add(nameField);
add(new JLabel("Date of Birth:"));
add(dobField);
add(new JLabel("Age:"));
add(ageField);
add(new JLabel("Citizenship:"));
add(citizenshipField);
add(new JLabel("Religion:"));
add(religionField);
add(new JLabel("Contact No.:"));
add(contactField);
add(new JLabel("Father's Name:"));
add(fatherNameField);
add(new JLabel("Mother's Name:"));
add(motherNameField);
add(new JLabel("Year Level:"));
add(yearBox);
add(new JLabel("Course & Section:"));
add(casBox);
add(new JLabel("Gender:"));
add(genderPanel);
}
}
// ======== MoreInfoPanel.java ========
package activity1;
import javax.swing.*;
import java.awt.*;
public MoreInfoPanel() {
// 3 rows, 2 columns for labels and text areas
// 5 px of spacing in horizontal and vertical axes.
setLayout(new GridLayout(3, 2, 5, 5));
import javax.swing.*;
import java.awt.*;
public ButtonPanel() {
setLayout(new FlowLayout(FlowLayout.CENTER));
add(submitButton);
add(resetButton);
add(validateButton);
}
}
OUTPUT:
Southern Luzon State University
COLLEGE OF ENGINEERING
Lucban, Quezon
Prepared by:
ALAY, MICO
BSCPE IIA - GE
Presented to:
ENGR. MADONNA CASTRO
PROGRAMMING ACTIVITY 15
SOURCE CODE:
package activity2;
import javax.swing.*;
import java.awt.*;
// Display
JTextField displayField = new JTextField();
displayField.setFont(new Font("Consolas", Font.BOLD, 24));
displayField.setHorizontalAlignment(JTextField.RIGHT);
displayField.setPreferredSize(new Dimension(400, 60));
displayField.setEditable(false);
mainPanel.add(displayField, BorderLayout.NORTH);
mainPanel.add(new ButtonPanel(displayField), BorderLayout.CENTER);
add(mainPanel);
setVisible(true);
}
package activity2;
import javax.swing.*;
import java.awt.*;
OUTPUT: