Simple User Registration Form PDF
Document Details
Tags
Summary
This document provides code examples and explanations for creating a graphical user interface (GUI) registration form in Java using the Swing framework. It demonstrates how to use various components such as labels, text fields, radio buttons, combo boxes, and text areas to build the form.
Full Transcript
**Simple User Registration Form** **Swing** is a part of the **JFC (Java Foundation Classes)**. Building [Graphical User Interface](https://www.geeksforgeeks.org/what-is-the-difference-between-gui-and-cui/) in Java requires the use of Swings. **Swing Framework** contains a large set of components w...
**Simple User Registration Form** **Swing** is a part of the **JFC (Java Foundation Classes)**. Building [Graphical User Interface](https://www.geeksforgeeks.org/what-is-the-difference-between-gui-and-cui/) in Java requires the use of Swings. **Swing Framework** contains a large set of components which allow a high level of customization and provide rich functionalities, and is used to create window-based applications. Java swing components are lightweight, platform-independent, provide powerful components like tables, scroll panels, buttons, list, color chooser, etc. In this article, we'll see **how to make a Registration form** which includes all the buttons and field in one Form. **Steps:** 1\. Create a Java file that contains the main class -- Registration. This class will only contain the main method to invoke the required methods. **class Registration {** **public static void main(String\[\] args)** **throws Exception** **{** **MyFrame f = new MyFrame();** **}** **}** 2\. Create another class MyFrame, which will contain the form. 3\. In this MyFrame Class, the methods to be made are: - Components like [JLabel](https://www.geeksforgeeks.org/jlabel-java-swing/), [JTextField](https://www.geeksforgeeks.org/java-swing-jtextfield/), [JRadioButton](https://www.geeksforgeeks.org/jradiobutton-java-swing/), [ButtonGroup](https://www.geeksforgeeks.org/jradiobutton-java-swing/), [JComboBox](https://www.geeksforgeeks.org/java-swing-jcombobox-examples/), and [JTextArea](https://www.geeksforgeeks.org/java-swing-jtextarea/). These components will collectively form the Registration form. - A [constructor](https://www.geeksforgeeks.org/constructors-in-java/), to initialize the components with default values. - A method **actionPerformed()** to get the action performed by the user and act accordingly. - 4\. Copy the code of MyFrame class from below. - 5\. Save the file as Registration.java 6\. Compile the file by using [javac](https://www.geeksforgeeks.org/run-java-class-file-different-directory/) command. javac Registration.java 7\. Run the program by calling the main class java Registration Below is the code to implement the Simple Registration Form using Java Swing: - Java +-----------------------------------------------------------------------+ | // Java program to implement | | | | // a Simple Registration Form | | | | // using Java Swing | | | | | | | | **import** javax.swing.\*; | | | | **import** java.awt.\*; | | | | **import** java.awt.event.\*; | | | | | | | | **class** MyFrame | | | | **extends** JFrame | | | | **implements** ActionListener { | | | | | | | | // Components of the Form | | | | **private** Container c; | | | | **private** JLabel title; | | | | **private** JLabel name; | | | | **private** JTextField tname; | | | | **private** JLabel mno; | | | | **private** JTextField tmno; | | | | **private** JLabel gender; | | | | **private** JRadioButton male; | | | | **private** JRadioButton female; | | | | **private** ButtonGroup gengp; | | | | **private** JLabel dob; | | | | **private** JComboBox date; | | | | **private** JComboBox month; | | | | **private** JComboBox year; | | | | **private** JLabel add; | | | | **private** JTextArea tadd; | | | | **private** JCheckBox term; | | | | **private** JButton sub; | | | | **private** JButton reset; | | | | **private** JTextArea tout; | | | | **private** JLabel res; | | | | **private** JTextArea resadd; | | | | **private** String dates\[\] | | | | = { \"1\", \"2\", \"3\", \"4\", \"5\", | | | | \"6\", \"7\", \"8\", \"9\", \"10\", | | | | \"11\", \"12\", \"13\", \"14\", \"15\", | | | | \"16\", \"17\", \"18\", \"19\", \"20\", | | | | \"21\", \"22\", \"23\", \"24\", \"25\", | | | | \"26\", \"27\", \"28\", \"29\", \"30\", | | | | \"31\" }; | | | | **private** String months\[\] | | | | = { \"Jan\", \"feb\", \"Mar\", \"Apr\", | | | | \"May\", \"Jun\", \"July\", \"Aug\", | | | | \"Sup\", \"Oct\", \"Nov\", \"Dec\" }; | | | | **private** String years\[\] | | | | = { \"1995\", \"1996\", \"1997\", \"1998\", | | | | \"1999\", \"2000\", \"2001\", \"2002\", | | | | \"2003\", \"2004\", \"2005\", \"2006\", | | | | \"2007\", \"2008\", \"2009\", \"2010\", | | | | \"2011\", \"2012\", \"2013\", \"2014\", | | | | \"2015\", \"2016\", \"2017\", \"2018\", | | | | \"2019\" }; | | | | | | | | // constructor, to initialize the components | | | | // with default values. | | | | **public** MyFrame() | | | | { | | | | setTitle(\"Registration Form\"); | | | | setBounds(300, 90, 900, 600); | | | | setDefaultCloseOperation(EXIT\_ON\_CLOSE); | | | | setResizable(**false**); | | | | | | | | c = getContentPane(); | | | | c.setLayout(**null**); | | | | title = **new** JLabel(\"Registration Form\"); | | | | title.setFont(**new** Font(\"Arial\", Font.PLAIN, 30)); | | | | title.setSize(300, 30); | | | | title.setLocation(300, 30); | | | | c.add(title); | | | | name = **new** JLabel(\"Name\"); | | | | name.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | name.setSize(100, 20); | | | | name.setLocation(100, 100); | | | | c.add(name); | | | | tname = **new** JTextField(); | | | | tname.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | tname.setSize(190, 20); | | | | tname.setLocation(200, 100); | | | | c.add(tname); | | | | mno = **new** JLabel(\"Mobile\"); | | | | mno.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | mno.setSize(100, 20); | | | | mno.setLocation(100, 150); | | | | c.add(mno); | | | | tmno = **new** JTextField(); | | | | tmno.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | tmno.setSize(150, 20); | | | | tmno.setLocation(200, 150); | | | | c.add(tmno); | | | | gender = **new** JLabel(\"Gender\"); | | | | gender.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | gender.setSize(100, 20); | | | | gender.setLocation(100, 200); | | | | c.add(gender); | | | | male = **new** JRadioButton(\"Male\"); | | | | male.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | male.setSelected(**true**); | | | | male.setSize(75, 20); | | | | male.setLocation(200, 200); | | | | c.add(male); | | | | female = **new** JRadioButton(\"Female\"); | | | | female.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | female.setSelected(**false**); | | | | female.setSize(80, 20); | | | | female.setLocation(275, 200); | | | | c.add(female); | | | | gengp = **new** ButtonGroup(); | | | | gengp.add(male); | | | | gengp.add(female); | | | | | | | | dob = **new** JLabel(\"DOB\"); | | | | dob.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | dob.setSize(100, 20); | | | | dob.setLocation(100, 250); | | | | c.add(dob); | | | | date = **new** JComboBox(dates); | | | | date.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | date.setSize(50, 20); | | | | date.setLocation(200, 250); | | | | c.add(date); | | | | month = **new** JComboBox(months); | | | | month.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | month.setSize(60, 20); | | | | month.setLocation(250, 250); | | | | c.add(month); | | | | year = **new** JComboBox(years); | | | | year.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | year.setSize(60, 20); | | | | year.setLocation(320, 250); | | | | c.add(year); | | | | add = **new** JLabel(\"Address\"); | | | | add.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | add.setSize(100, 20); | | | | add.setLocation(100, 300); | | | | c.add(add); | | | | tadd = **new** JTextArea(); | | | | tadd.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | tadd.setSize(200, 75); | | | | tadd.setLocation(200, 300); | | | | tadd.setLineWrap(**true**); | | | | c.add(tadd); | | | | term = **new** JCheckBox(\"Accept Terms And Conditions.\"); | | | | term.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | term.setSize(250, 20); | | | | term.setLocation(150, 400); | | | | c.add(term); | | | | sub = **new** JButton(\"Submit\"); | | | | sub.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | sub.setSize(100, 20); | | | | sub.setLocation(150, 450); | | | | sub.addActionListener(**this**); | | | | c.add(sub); | | | | reset = **new** JButton(\"Reset\"); | | | | reset.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | reset.setSize(100, 20); | | | | reset.setLocation(270, 450); | | | | reset.addActionListener(**this**); | | | | c.add(reset); | | | | | | | | tout = **new** JTextArea(); | | | | tout.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | tout.setSize(300, 400); | | | | tout.setLocation(500, 100); | | | | tout.setLineWrap(**true**); | | | | tout.setEditable(**false**); | | | | c.add(tout); | | | | res = **new** JLabel(\"\"); | | | | res.setFont(**new** Font(\"Arial\", Font.PLAIN, 20)); | | | | res.setSize(500, 25); | | | | res.setLocation(100, 500); | | | | c.add(res); | | | | resadd = **new** JTextArea(); | | | | resadd.setFont(**new** Font(\"Arial\", Font.PLAIN, 15)); | | | | resadd.setSize(200, 75); | | | | resadd.setLocation(580, 175); | | | | resadd.setLineWrap(**true**); | | | | c.add(resadd); | | | | setVisible(**true**); | | | | } | | | | | | | | // method actionPerformed() | | | | // to get the action performed | | | | // by the user and act accordingly | | | | **public** **void** actionPerformed(ActionEvent e) | | | | { | | | | **if** (e.getSource() == sub) { | | | | **if** (term.isSelected()) { | | | | String data1; | | | | String data | | | | = \"Name : \" | | | | + tname.getText() + \"\\n\" | | | | + \"Mobile : \" | | | | + tmno.getText() + \"\\n\"; | | | | **if** (male.isSelected()) | | | | data1 = \"Gender : Male\" | | | | + \"\\n\"; | | | | **else** | | | | data1 = \"Gender : Female\" | | | | + \"\\n\"; | | | | String data2 | | | | = \"DOB : \" | | | | + (String)date.getSelectedItem() | | | | + \"/\" + (String)month.getSelectedItem() | | | | + \"/\" + (String)year.getSelectedItem() | | | | + \"\\n\"; | | | | | | | | String data3 = \"Address : \" + tadd.getText(); | | | | tout.setText(data + data1 + data2 + data3); | | | | tout.setEditable(**false**); | | | | res.setText(\"Registration Successfully..\"); | | | | } | | | | **else** { | | | | tout.setText(\"\"); | | | | resadd.setText(\"\"); | | | | res.setText(\"Please accept the\" | | | | + \" terms & conditions..\"); | | | | } | | | | } | | | | | | | | **else** **if** (e.getSource() == reset) { | | | | String def = \"\"; | | | | tname.setText(def); | | | | tadd.setText(def); | | | | tmno.setText(def); | | | | res.setText(def); | | | | tout.setText(def); | | | | term.setSelected(**false**); | | | | date.setSelectedIndex(0); | | | | month.setSelectedIndex(0); | | | | year.setSelectedIndex(0); | | | | resadd.setText(def); | | | | } | | | | } | | | | } | | | | | | | | // Driver Code | | | | **class** Registration { | | | | | | | | **public** **static** **void** main(String\[\] args) **throws** | | Exception | | | | { | | | | MyFrame f = **new** MyFrame(); | | | | } | | | | } | +-----------------------------------------------------------------------+ **1. Compile:** **2. Registration Form unfilled:** ![](media/image2.png) **3. Registration Form filled:**