| | |
GridBagLayout HELP
Please support our Java advertiser: Programming Forums - DaniWeb Sister Site
![]() |
•
•
Join Date: Apr 2005
Posts: 22
Reputation:
Solved Threads: 0
Is there something about adding a JList to GridBagLayout that I am missing. I want to place a JList between a JLabel and a JTextArea. No matter what I do the list seems to stay in column 1.
I am only using GridBagLayout in the west pane(wP) I have tried messing with the weights and I am stumped. I must be missing something!!!
I just want everything in column 0
First code block is the layout. Second is the entire project so far.
I am only using GridBagLayout in the west pane(wP) I have tried messing with the weights and I am stumped. I must be missing something!!!
I just want everything in column 0
First code block is the layout. Second is the entire project so far.
Java Syntax (Toggle Plain Text)
Project6() { super("James W Project6"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); nP = new JPanel(); nP.setLayout(new FlowLayout()); nP.setBackground(new Color(85,107,47)); npLbl = new JLabel("South Park Photo Album"); npLbl.setFont(fifty); nP.add(npLbl); add(nP, BorderLayout.NORTH); sP = new JPanel(); sP.setLayout(new GridLayout(1,2)); sP.setBackground(new Color(85,107,47)); spLbl = new JLabel("Select Font Size"); spLbl.setFont(thirty); spLbl.setHorizontalTextPosition(SwingConstants.LEFT); sP.add(spLbl); jsl.setMajorTickSpacing(2); jsl.setPaintTicks(true); jsl.setPaintLabels(true); jsl.addChangeListener(this); sP.add(jsl); add(sP, BorderLayout.SOUTH); // Problem is in here GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints constraints = new GridBagConstraints(); constraints.fill = GridBagConstraints.BOTH; wP = new JPanel(); wP.setLayout(gridbag); wP.setBackground(new Color(189,183,107)); wpLbl = new JLabel("Sayings"); wpLbl.setFont(twenty); constraints.ipady = 50; constraints.weighty = 0.3; constraints.gridx = 0; constraints.gridy = 0; constraints.anchor = GridBagConstraints.FIRST_LINE_START; gridbag.setConstraints(wpLbl, constraints); wP.add(wpLbl); sayList = new JList(sayings); sayList.setVisibleRowCount(3); sayList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); constraints.weightx = 0.0; constraints.weighty = 0.0; constraints.gridx = 0; constraints.gridy = 1; constraints.anchor = GridBagConstraints.LINE_START; gridbag.setConstraints(sayList, constraints); wP.add(new JScrollPane(sayList)); sayList.addListSelectionListener(this); cart = new JTextArea(11,12); cart.setBackground(new Color(189,183,107)); cart.setBorder(BorderFactory.createTitledBorder (BorderFactory.createLineBorder(Color.black),"Cart:")); cart.setEditable(false); cart.setLineWrap(true); constraints.gridx = 0; constraints.gridy = 2; //constraints.anchor = GridBagConstraints.PAGE_END; gridbag.setConstraints(cart, constraints); wP.add(cart); add(wP, BorderLayout.WEST); eP = new JPanel(); eP.setLayout(new GridLayout(12,1)); eP.setBackground(new Color(189,183,107)); lbl1 = new JLabel("Available"); lbl1.setFont(twenty); lbl2 = new JLabel("Photo Sizes"); lbl2.setFont(twenty); lbl3 = new JLabel("Check Selections"); lbl3.setFont(twenty); cb3 = new JCheckBox("3X5 $0.50 each"); cb5 = new JCheckBox("5X7 $1.00 each"); cb6 = new JCheckBox("6X8 $1.50 each"); cb8 = new JCheckBox("8X10 $3.00 each"); cb16 = new JCheckBox("16X20 $5.00 each"); completeBtn = new JButton("Complete Order"); clrBtn = new JButton("Clear"); exitBtn = new JButton("Exit"); eP.add(lbl1); eP.add(lbl2); eP.add(lbl3); eP.add(cb3); eP.add(cb5); eP.add(cb6); eP.add(cb8); eP.add(cb16); eP.add(completeBtn); eP.add(clrBtn); eP.add(exitBtn); cb3.addItemListener(this); cb5.addItemListener(this); cb6.addItemListener(this); cb8.addItemListener(this); cb16.addItemListener(this); completeBtn.addActionListener(this); clrBtn.addActionListener(this); exitBtn.addActionListener(this); add(eP, BorderLayout.EAST); /* commented out for posting uses icons cP = new JPanel(); cP.setLayout(new GridLayout(2,2)); cP.setBackground(new Color(240,230,140)); cpLbl1 = new JLabel("Photo Selection"); cpLbl1.setFont(twenty); cP.add(cpLbl1); //picList = new JList(icons); //picList.setVisibleRowCount(2); //picList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); //cP.add(new JScrollPane(picList)); //picList.addListSelectionListener(this); colorBtn = new JButton("Click to select a matte color and preview"); cP.add(colorBtn); colorBtn.addActionListener(this); cP.add(cpLbl2); add(cP, BorderLayout.CENTER); */ }
Java Syntax (Toggle Plain Text)
import java.awt.*; import javax.swing.*; import javax.swing.event.*; import java.awt.event.*; public class Project6 extends JFrame implements MouseListener, ChangeListener, ListSelectionListener, ItemListener, ActionListener { private Container c = getContentPane(); private JPanel nP, sP, cP, eP, wP; private JLabel npLbl,spLbl,wpLbl,epLbl,cpLbl1, lbl1,lbl2,lbl3,lbl4 ,lbl5; private JLabel cpLbl2 = new JLabel("hey"); private JLabel wpLbl1 = new JLabel("hey"); private JSlider jsl = new JSlider(SwingConstants.HORIZONTAL,8,30,10); private JButton colorBtn,clrBtn, completeBtn, exitBtn; private JList sayList, picList; private JTextArea cart; private JCheckBox cb3, cb5, cb6, cb8, cb16; private Font fifty = new Font("Lucida Sans", Font.BOLD, 50); private Font thirty = new Font("Serif", Font.BOLD, 30); private Font twenty = new Font("Serif", Font.BOLD, 20); private Font six = new Font("Serif", Font.PLAIN, 6); private boolean sayPicked = false; private boolean sizePicked = false; private boolean mattePicked = false; private boolean imagePicked = false; private int size = 10; private int[] indices; private float total; private int qtyCb3, qtyCb5, qtyCb6, qtyCb8, qtyCb16; private String[] sayings = {"Honor Student","Varsity Football","Varsity Soccer", "Varsity Chearleading","Most likely to succeed", "Class Officer","Debate Team","Robotics Club", "School paper", "Loser"}; /* commented out for posting in forum incase someone wants to copy and paste to run it private String[] pics = {"1a.gif","2a.gif","3a.gif","4a.gif","50a.gif", "62a.gif","98a.gif","64a.gif","56a.gif","7a.gif", "57a.gif","49a.gif"}; private String[] picNames = {"Eric","Kyle","Stan","Kenny","Starvin'Marvin","Timmy","Jimmy", "Tweek","Phillip","Mr. Garrison","Terrance","Mr. Mackey"}; private Icon icons[] = {new ImageIcon(pics[0]), new ImageIcon(pics[1]), new ImageIcon(pics[2]), new ImageIcon(pics[3]), new ImageIcon(pics[4]), new ImageIcon(pics[5]), new ImageIcon(pics[6]), new ImageIcon(pics[7]), new ImageIcon(pics[8]), new ImageIcon(pics[9]), new ImageIcon(pics[10]), new ImageIcon(pics[11])}; */ public void stateChanged(ChangeEvent ce)// Slider { size = jsl.getValue(); System.out.println("Size is now set to " + size); } public void valueChanged(ListSelectionEvent lse)//List { if(lse.getSource() == sayList) { indices = sayList.getSelectedIndices(); for(int i = 0; i<indices.length;i++) { System.out.println(sayings[indices[i]] + "\n\n"); } } if(lse.getSource() == picList) { imagePicked = true; //System.out.println(picNames[picList.getSelectedIndex()]+ " "+imagePicked); } } public void itemStateChanged(ItemEvent ie)//Checkboxes { if(ie.getSource() == cb3) { qtyCb3 = Integer.parseInt(JOptionPane.showInputDialog( "How many 3X5 pictures?")); } } public void actionPerformed(ActionEvent ae)//Buttons { if(ae.getSource() == colorBtn) { } if(ae.getSource() == clrBtn) { clearAll(); } if(ae.getSource() == exitBtn) { System.exit(0); } if(ae.getSource() == completeBtn) { } } public void setSize() { } public void clearAll() { sayPicked = false; sizePicked = false; mattePicked = false; imagePicked = false; cb3.setSelected(false); cb5.setSelected(false); cb6.setSelected(false); cb8.setSelected(false); cb16.setSelected(false); jsl.setValue(10); sayList.clearSelection(); } public static void main(String[] args) { Project6 a = new Project6(); a.pack(); a.setVisible(true); } Project6() { super("James W Project6"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); nP = new JPanel(); nP.setLayout(new FlowLayout()); nP.setBackground(new Color(85,107,47)); npLbl = new JLabel("South Park Photo Album"); npLbl.setFont(fifty); nP.add(npLbl); add(nP, BorderLayout.NORTH); sP = new JPanel(); sP.setLayout(new GridLayout(1,2)); sP.setBackground(new Color(85,107,47)); spLbl = new JLabel("Select Font Size"); spLbl.setFont(thirty); spLbl.setHorizontalTextPosition(SwingConstants.LEFT); sP.add(spLbl); jsl.setMajorTickSpacing(2); jsl.setPaintTicks(true); jsl.setPaintLabels(true); jsl.addChangeListener(this); sP.add(jsl); add(sP, BorderLayout.SOUTH); // Problem is in here GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints constraints = new GridBagConstraints(); constraints.fill = GridBagConstraints.BOTH; wP = new JPanel(); wP.setLayout(gridbag); wP.setBackground(new Color(189,183,107)); wpLbl = new JLabel("Sayings"); wpLbl.setFont(twenty); constraints.ipady = 50; constraints.weighty = 0.3; constraints.gridx = 0; constraints.gridy = 0; constraints.anchor = GridBagConstraints.FIRST_LINE_START; gridbag.setConstraints(wpLbl, constraints); wP.add(wpLbl); sayList = new JList(sayings); sayList.setVisibleRowCount(3); sayList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); constraints.weightx = 0.0; constraints.weighty = 0.0; constraints.gridx = 0; constraints.gridy = 1; constraints.anchor = GridBagConstraints.LINE_START; gridbag.setConstraints(sayList, constraints); wP.add(new JScrollPane(sayList)); sayList.addListSelectionListener(this); cart = new JTextArea(11,12); cart.setBackground(new Color(189,183,107)); cart.setBorder(BorderFactory.createTitledBorder (BorderFactory.createLineBorder(Color.black),"Cart:")); cart.setEditable(false); cart.setLineWrap(true); constraints.gridx = 0; constraints.gridy = 2; //constraints.anchor = GridBagConstraints.PAGE_END; gridbag.setConstraints(cart, constraints); wP.add(cart); add(wP, BorderLayout.WEST); eP = new JPanel(); eP.setLayout(new GridLayout(12,1)); eP.setBackground(new Color(189,183,107)); lbl1 = new JLabel("Available"); lbl1.setFont(twenty); lbl2 = new JLabel("Photo Sizes"); lbl2.setFont(twenty); lbl3 = new JLabel("Check Selections"); lbl3.setFont(twenty); cb3 = new JCheckBox("3X5 $0.50 each"); cb5 = new JCheckBox("5X7 $1.00 each"); cb6 = new JCheckBox("6X8 $1.50 each"); cb8 = new JCheckBox("8X10 $3.00 each"); cb16 = new JCheckBox("16X20 $5.00 each"); completeBtn = new JButton("Complete Order"); clrBtn = new JButton("Clear"); exitBtn = new JButton("Exit"); eP.add(lbl1); eP.add(lbl2); eP.add(lbl3); eP.add(cb3); eP.add(cb5); eP.add(cb6); eP.add(cb8); eP.add(cb16); eP.add(completeBtn); eP.add(clrBtn); eP.add(exitBtn); cb3.addItemListener(this); cb5.addItemListener(this); cb6.addItemListener(this); cb8.addItemListener(this); cb16.addItemListener(this); completeBtn.addActionListener(this); clrBtn.addActionListener(this); exitBtn.addActionListener(this); add(eP, BorderLayout.EAST); /* commented out for posting uses icons cP = new JPanel(); cP.setLayout(new GridLayout(2,2)); cP.setBackground(new Color(240,230,140)); cpLbl1 = new JLabel("Photo Selection"); cpLbl1.setFont(twenty); cP.add(cpLbl1); //picList = new JList(icons); //picList.setVisibleRowCount(2); //picList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); //cP.add(new JScrollPane(picList)); //picList.addListSelectionListener(this); colorBtn = new JButton("Click to select a matte color and preview"); cP.add(colorBtn); colorBtn.addActionListener(this); cP.add(cpLbl2); add(cP, BorderLayout.CENTER); */ } public void mouseReleased(MouseEvent event){} public void mouseClicked(MouseEvent event){} public void mousePressed(MouseEvent event){} public void mouseEntered(MouseEvent event){} public void mouseExited(MouseEvent event){} }
![]() |
Similar Threads
- GridBag layout problems. (Java)
- How to position buttons/boxes in a JTabbed Pane? (Java)
- I Need Help Please! (Java)
- "cannot resolve symbol"problem (Java)
- Set Size for JSlider (Java)
- Creating a GUI that accepts user input help (Java)
- Choice of layout. (Java)
- URGENT Help Needed With TicTacToe Application Source Code!!! (Java)
- Help with program...Please...... (Java)
Other Threads in the Java Forum
- Previous Thread: Java Selector
- Next Thread: help needed
| Thread Tools | Search this Thread |
-xlint android api applet application array arrays automation bi binary blackberry block bluetooth chat class classes client code compile compiler component database developmenthelp draw eclipse error event exception fractal freeze game gameprogramming givemetehcodez graphics gui html ide image input integer j2me j2seprojects java javac javaprojects jetbrains jni jpanel jtable julia learningresources lego linux list login loop loops mac map method methods mobile netbeans newbie notdisplaying number online oracle page print problem program programming project qt recursion scanner screen server set singleton size sms sort sql string swing system template textfields threads time title tree tutorial-sample update variablebinding windows working xor






