2016-11-08 5 views
0

Es läuft in Ordnung, aber meine Listen werden überhaupt nicht gedruckt. Außerdem, wo sollte ich die Konvertierung in Kleinbuchstaben für meine Listen hinzufügen? Und ich muss auch die weißen Felder vor oder nach den Listen trimmen, welche Methode ist das Beste?Wie kommt es, dass meine Listen nicht gedruckt werden, wenn ich das Programm starte?

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
import java.lang.*; 

public class ShoppingList extends JFrame { 
    private JPanel groceryPanel; 
    private JPanel selectedGroceryPanel; 
    private JPanel buttonPanel; 
    private JList groceryList; 
    private JList selectedGroceryList; 
    private JLabel label; 
    private JTextField selectedGroceryItem; 
    private JButton button1; 
    private JButton button2; 
    private JButton button3; 
    private JButton button4; 

    private String[] lists = { "Burger Patty", "Honey Ham", "Milk", 
      "Egg", "Orange Juice", "Ketchup", "Lettuce", 
      "Hamburger Buns", "Tomatoes", "Cheese" 
    }; 

    //ctor 
    public ShoppingList() { 
     setTitle("Shopping List"); 
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     setLayout(new BorderLayout()); 

     buildGroceryPanel(); 
     buildSelectedGroceryPanel(); 
     buildButtonPanel(); 

     add(groceryPanel, BorderLayout.NORTH); 
     add(selectedGroceryPanel, BorderLayout.CENTER); 
     add(buttonPanel, BorderLayout.SOUTH); 

     pack(); 
     setVisible(true); 
    }//end ctor 

    private void buildGroceryPanel() { 
     groceryPanel = new JPanel(); 
     groceryList = new JList(lists); 

     groceryList.setSelectionMode(
       ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); 
    }//end buildGroceryPanel 

    private void buildSelectedGroceryPanel() { 
     selectedGroceryPanel = new JPanel(); 
     label = new JLabel("You selected: "); 
     selectedGroceryList = new JList(); 
     selectedGroceryItem = new JTextField(10); 

     selectedGroceryItem.setEditable(false); 

     selectedGroceryPanel.add(label); 
     selectedGroceryPanel.add(selectedGroceryItem); 
    }//end buildSelectedGroceryPanel 

    private void buildButtonPanel() { 
     buttonPanel = new JPanel(); 
     button1 = new JButton("ADD"); 
     button2 = new JButton("REMOVE"); 
     button3 = new JButton("SAVE"); 
     button4 = new JButton("LOAD"); 

     button1.addActionListener(new ButtonListener()); 
     button2.addActionListener(new ButtonListener()); 
     button3.addActionListener(new ButtonListener()); 
     button4.addActionListener(new ButtonListener()); 

     buttonPanel.add(button1); 
     buttonPanel.add(button2); 
     buttonPanel.add(button3); 
     buttonPanel.add(button4); 
    }//end buildButtonPanel 

    private class ButtonListener 
      implements ActionListener { 

     public void actionPerformed(ActionEvent e) { 
      Object[] selections = 
        groceryList.getSelectedValues(); 
      selectedGroceryList.setListData(selections); 
     } 
    } 
    public static void main(String[] args) { 
     new ShoppingList(); 
    }//end main 
} 
+3

Wo drucken Sie? – shmosel

Antwort

-2

Nicht sicher, ob dies ist, was Sie fordern, aber es gibt bereits zwei Methoden für das, was Sie in der String-Klasse sind zu sprechen. Beispiel:

String str = " SamPle TeXt "; 
str = str.toLowerCase().trim(); 
System.out.println(str); 

Wird auszudrucken "Beispieltext"

+0

Unvollständige Antwort, Listen sollten for-Schleife oder etwas ähnliches verwenden. – toha

0

Sie benötigen groceryList zu Ihrem groceryPanel hinzuzufügen. Hinzufügen groceryPanel.add(groceryList); in buildGroceryPanel() wird helfen.

Verwandte Themen