-
June 4th, 2005, 03:55 AM
#1
Banned
Can't Get GUI to align right (java)
I am making a simple GUI in java that computes my Grade Point Average so I can use it at the end of the quarter. If I can get this program to work it would help me out and would make my life a bit easier. (plus I want to impress a friend)
My question is that I don't know how to align my panels correctly. I want them to look something like this hideous drawing:
Code:
---------------------------------------------------------
|Title |
|--------------------------------------------------------|
| Class 1 | Class 2 |
|Grade? Credit hour | Grade? Credit hour |
| o B | o 3 | |
| o C | o 4 | |
| o D | o 5 | |
|--------------------------------------------------------|
| Class 4 | Class 5 |
| | |
| | |
| | |
---------------------------------------------------------|
| Calc Clear [ txt box] |
----------------------------------------------------------
I only know how to align this with
getContentPane().setLayout(new BorderLayout());
getContentPane().add(p1, BorderLayout.NORTH);
getContentPane().add(p2, BorderLayout.CENTER);
getContentPane().add(p3, BorderLayout.SOUTH);
And this simply will not work.
This may be a bit hard to decipher but this is my code. Keep in mind that it is not finished, I just wanted to get the structure down before I start adding everything else.
Code:
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class GPAcalc extends JFrame implements ActionListener
{
//Declare Radio buttons and the necessary buttons and text fields
JRadioButton jRBn2,jRBa,jRBb,jRBc,jRBd,jRB2a,jRB2b,jRB2c,jRB2d,jRB3a,jRB3b,jRB3c,jRB3d,jRB4a,jRB4b,jRB4c,jRB4d;
JTextField jTF1;
JButton jB1,jB2;
/*The main method **/
public static void main(String[] args)
{
GPAcalc frame = new GPAcalc();
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
} // End of main method
public GPAcalc()
{
setTitle("GPA Calculator");
JPanel p1 = new JPanel();
ButtonGroup bg = new ButtonGroup();
//add the Radio Buttons to a Panel
p1.setLayout(new GridLayout(5,1));
p1.add(new JLabel("Class 1"));
p1.add(jRBa = new JRadioButton("A",true));
p1.add(jRBb = new JRadioButton("B"));
p1.add(jRBc = new JRadioButton("C"));
p1.add(jRBd = new JRadioButton("D"));
bg.add(jRBa);
bg.add(jRBb);
bg.add(jRBc);
bg.add(jRBd);
JPanel p4 = new JPanel();
ButtonGroup bg1 = new ButtonGroup();
p4.setLayout(new GridLayout(4,1));
p4.add(jRBn2 = new JRadioButton("2"));
bg1.add(jRBn2);
//add the textfield to a panel
JPanel p2 = new JPanel();
p2.setLayout(new FlowLayout());
p2.add(new JLabel("The Button Selected is"));
p2.add(jTF1 = new JTextField(20));
jTF1.setEditable(false);
//add the buttons to a panel
JPanel p3 = new JPanel();
p3.setLayout(new FlowLayout());
p3.add(jB1 = new JButton("Button?"));
p3.add(jB2 = new JButton("Clear"));
// Set FlowLayout for the frame and add panels to the frame
getContentPane().setLayout(new BorderLayout());
getContentPane().add(p1, BorderLayout.NORTH);
getContentPane().add(p2, BorderLayout.CENTER);
getContentPane().add(p3, BorderLayout.SOUTH);
// Register listener
jB1.addActionListener(this);
jB2.addActionListener(this);
//Without the above two lines the buttons will not work
} // End of Constructor
public void actionPerformed(ActionEvent e)
{
int a1=0,a2=0,a3=0,a4=0;
int b1=0,b2=0,b3=0,b4=0;
int c1=0,c2=0,c3=0,c4=0;
int d1=0,d2=0,d3=0,d4=0;
int two1=0,two2=0,two3=0,two4=0;
int thr1=0,thr2=0,thr3=0,thr4=0;
int four1=0,four2=0,four3=0,four4=0;
int five1=0,five2=0,five3=0,five4=0;
if (e.getSource() == jB1)
{
// Get the radio button selected
if (jRBa.isSelected())
{
a1 = 4;
}
else if (jRB2a.isSelected())
{
a2 = 4;
}
else if (jRB3a.isSelected())
{
a3 = 4;
}
else if (jRB4a.isSelected())
{
a4 = 4;
}
// Set result in TextField jTF1
//jTF1.setText(x); FIX THIS!
}
if(e.getSource() == jB2)
{
jTF1.setText(" ");
}
}//End of ActionPerformed
}//End of class
I hope someone out there can help me with this.
Thank you
-Any
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
|