Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I need to make a GUI using Gridbag layout. below is my code which uses borderlay

ID: 3545172 • Letter: I

Question

I need to make a GUI using Gridbag layout. below is my code which uses borderlayout with JTabbed Pane and i have the code working but the window and all three panels are messed up so i need to use gridbaglayout please help. there are two .java files. second one compiles the code. 1st .java: AFrame.java and 2nd: JTabbedPaneDemo


// tabbedpane layout


import java.awt.BorderLayout;

import javax.swing.JTabbedPane;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.SwingConstants;

import javax.swing.JComboBox;

import javax.swing.JFrame;

import javax.swing.JTextField;

import javax.swing.JComboBox;

import javax.swing.JList;

import javax.swing.JButton;


public class AFrame extends JFrame

{

//set up GUI

public AFrame()

{

super("Bank Account");

JTabbedPane tabbedPane = new JTabbedPane(); // create the panel 1




// set up Panel 1 - Deposit

JLabel label1 = new JLabel ("Deposit To:");

JLabel label2 = new JLabel ("Enter Amount:");

JPanel panel1 = new JPanel();


String[]accountTypes = {"Select Account type","Checking Account","Savings Account"}; // selecting account type here

JComboBox comboBox = new JComboBox(accountTypes);

JTextField textField1 = new JTextField("");


panel1.setLayout( new BorderLayout() );

panel1.add( comboBox, BorderLayout.CENTER);

panel1.add( textField1,BorderLayout.CENTER);

panel1.add( new JButton("View Balance"), BorderLayout.SOUTH);

panel1.add(label1, BorderLayout.NORTH);

panel1.add(label2, BorderLayout.WEST);


tabbedPane.addTab("Deposit",null,panel1,"First Panel");




//set up panel 2- withdraw


JLabel label3 = new JLabel ("WithDraw From:");

JLabel label4 = new JLabel ("Enter Amount:");

JPanel panel2 = new JPanel ();


panel2.setLayout( new BorderLayout() );

panel2.add( comboBox, BorderLayout.EAST);

panel2.add( textField1,BorderLayout.CENTER);

panel2.add( new JButton("View Balance"), BorderLayout.SOUTH);

panel2.add(label3, BorderLayout.NORTH);

panel2.add(label4, BorderLayout.WEST);


tabbedPane.addTab("Withdraw",null,panel2,"Second Panel");


//set up panel 3- Transfer


JLabel label5 = new JLabel ("Transfer From:");

JLabel label6 = new JLabel ("Transfer To:");

JLabel label7 = new JLabel ("Enter Amount:");

JPanel panel3 = new JPanel ();


panel3.setLayout( new BorderLayout() );

panel3.add( comboBox, BorderLayout.EAST);

panel3.add( textField1,BorderLayout.CENTER);

panel3.add( new JButton("View Balance"), BorderLayout.SOUTH);

panel3.add(label5, BorderLayout.WEST);

panel3.add(label6, BorderLayout.CENTER);

panel3.add(label7, BorderLayout.CENTER);


tabbedPane.addTab("Transfer",null,panel3,"Third Panel");


add(tabbedPane); // add JTabbedPane to frame

}// End JTabbed frame constructor

}//end class





for this code to compile here is my second .java file


import javax.swing.JFrame;

public class JTabbedPaneDemo

{

public static void main(String[]args)

{

AFrame aFrame = new AFrame();

aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

aFrame.setSize(680,420); // frame size

aFrame.setVisible(true);

}

}

Explanation / Answer

HERE IS THE COMPLETE AND CORRECT CODE