import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.event.*; public class ListJFrame extends StandardJFrame implements ListSelectionListener { MyJButton myButton, close; JList myList; String[] data; String r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12; JScrollPane scroller; ButtonHandler listener; // TextJFrame myTextJFrame; MakeAllText myMakeAllText; private class ButtonHandler implements ActionListener { public ButtonHandler() { } public void actionPerformed(ActionEvent ae) { System.out.println("Inner Class"); ListJFrame.this.setVisible(false); myButton.setEnabled(true); scroller.getVerticalScrollBar().setValue(0); } } public ListJFrame(MyJButton mjb) { myButton = mjb; setTitle("Crazy Laws"); r1 = "Maryland"; r2 = "Delaware"; r3 = "Virginia"; r4 = "North Carolina"; r5 = "New Jersey"; r6 = "New York"; r7 = "South Carolina"; r8 = "Connecticut"; r9 = "Massachusetts"; r10 = "Vermont"; r11 = "New Hampshire"; r12 = "Maine"; // Must reserve memory for the array before assigning it. We also must assume the number of variables data = new String[12]; data[0] = r1; data[1] = r2; data[2] = r3; data[3] = r4; data[4] = r5; data[5] = r6; data[6] = r7; data[7] = r8; data[8] = r9; data[9] = r10; data[10] = r11; data[11] = r12; myList = new JList(data); myList.setBorder(BorderFactory.createEmptyBorder(3,3,3,3)); // myList.setSize(300, 200); // myList.setVisible(true); // myList.setLocation(50, 50); // myContentPane.add(myList); scroller = new JScrollPane(myList, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); scroller.setSize(300, 200); scroller.setVisible(true); scroller.setLocation(50, 50); myContentPane.add(scroller); myList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); myList.addListSelectionListener(this); close = new MyJButton(); close.setText("Close"); close.setSize(80, 40); close.setLocation(150, 350); close.setVisible(true); myContentPane.add(close); listener = new ButtonHandler(); close.addActionListener(listener); myMakeAllText = new MakeAllText(); } public void windowClosing(WindowEvent we) { scroller.getVerticalScrollBar().setValue(0); System.out.println("closing"); myButton.setEnabled(true); setVisible(false); } public void valueChanged(ListSelectionEvent lse) { System.out.println("List"); if (lse.getValueIsAdjusting() == false) { System.out.println("Mouse Released"); // If "Maryland" is selected if(myList.getSelectedValue() == r1) { myMakeAllText.t1.setLocationRelativeTo(null); myMakeAllText.t1.setVisible(true); System.out.println("R1"); } // If "Delaware" is selected if(myList.getSelectedValue() == r2) { myMakeAllText.t2.setLocationRelativeTo(null); myMakeAllText.t2.setVisible(true); System.out.println("R2"); } // If "Virginia" is selected if(myList.getSelectedValue() == r3) { myMakeAllText.t3.setLocationRelativeTo(null); myMakeAllText.t3.setVisible(true); System.out.println("R3"); } // If "North Carolina" is selected if(myList.getSelectedValue() == r4) { myMakeAllText.t4.setLocationRelativeTo(null); myMakeAllText.t4.setVisible(true); System.out.println("R1"); } // If "New Jersey" is selected if(myList.getSelectedValue() == r5) { myMakeAllText.t5.setLocationRelativeTo(null); myMakeAllText.t5.setVisible(true); System.out.println("R2"); } // If "New York" is selected if(myList.getSelectedValue() == r6) { myMakeAllText.t6.setLocationRelativeTo(null); myMakeAllText.t6.setVisible(true); System.out.println("R3"); } // If "South Carolina" is selected if(myList.getSelectedValue() == r7) { myMakeAllText.t7.setLocationRelativeTo(null); myMakeAllText.t7.setVisible(true); System.out.println("R3"); } // If "Connecticut" is selected if(myList.getSelectedValue() == r8) { myMakeAllText.t8.setLocationRelativeTo(null); myMakeAllText.t8.setVisible(true); System.out.println("R3"); } // If "Massachusetts" is selected if(myList.getSelectedValue() == r9) { myMakeAllText.t9.setLocationRelativeTo(null); myMakeAllText.t9.setVisible(true); System.out.println("R3"); } // If "Vermont" is selected if(myList.getSelectedValue() == r10) { myMakeAllText.t10.setLocationRelativeTo(null); myMakeAllText.t10.setVisible(true); System.out.println("R3"); } // If "New Hampshire" is selected if(myList.getSelectedValue() == r11) { myMakeAllText.t11.setLocationRelativeTo(null); myMakeAllText.t11.setVisible(true); System.out.println("R3"); } // If "Maine" is selected if(myList.getSelectedValue() == r12) { myMakeAllText.t12.setLocationRelativeTo(null); myMakeAllText.t12.setVisible(true); System.out.println("R3"); } myList.clearSelection(); } } }