User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the Java section within the Software Development category of DaniWeb, a massive community of 456,593 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,520 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Java advertiser: Lunarpages Java Web Hosting
Views: 10649 | Replies: 44
Reply
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #31  
Sep 15th, 2007
I am going crazy from trying every thing I can think of, but i'm not gona give up I'm gona figure this out even if it kills me. lol maybe I need some sleep. lol
Reply With Quote  
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #32  
Sep 15th, 2007
Now I am getting these error:

Exception in thread "main" java.lang.NullPointerException
at inventoryi.InventoryMain.showGUI(InventoryI.java:94)
at inventoryi.InventoryMain.main(InventoryI.java:58)
Here is the coode I have So far:

import java.awt.*; //import all java.awt
import java.awt.event.*; //import all java.awt.event
import java.util.*; //import all java.util
import javax.swing.*; //import all javax.swing
import java.text.NumberFormat; // used to format currency
 
class InventoryMain extends Frame implements ActionListener
{

    CD[] productCD;
    JTextField[] fields;
    NumberFormat nf;
    JButton jbtLogo, jbtAdd, jbtFirst, jbtPrev, jbtNext, jbtLast, jbtDelete, jbtModify;    
    JLabel label; // logo   
    JPanel buttonJPanel; // panel to hold buttons
    String nameText;
    JComboBox combo;
    JTextArea textArea;
    private int index; 
    int i; // varialbe for looping
    double total = 0; // variable for total inventory   
    static int dispProd = 0; // variable for actionEvents   
    static int disptextArea;
    static int dispIndex;
    static int deleteProd = 0;
    static int modifyProd = 0;
    
    public static void main(String[] args) 
    {
           
       
        try 
        {
            UIManager.setLookAndFeel(
                    "com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
        } 
        catch (Exception e) 
        {
            System.err.println(e.getClass().getName() + ": " + e.getMessage());
        }
        InventoryMain test = new InventoryMain();
        test.initCD();
        test.showGUI();
        test.populateFields(0);
    }
  
   
    
    public void initCD() {
        //Create an array    
        productCD = new CD[11];
     
        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656");        
        
      //Sort elements in array in alphabetical order by product name
       //    product[0].sortItems(product);
      
     
    }
     
     
        
    private void showGUI() {
        JLabel l;
        JButton b;
        fields = new JTextField[11];
        combo = new JComboBox();
        for(int j = 0; j < productCD.length; j++)
        combo.addItem(productCD[j].getName());
        combo.addActionListener(this);
          Icon logo = new ImageIcon("C:/logo.jpg"); // load logo
        label = new JLabel(logo); // create logo label
        label.setToolTipText("Company Logo"); // create tooltip
            textArea = new JTextArea(productCD[3] + "\n"); // create textArea for
                                                        // product display
        JFrame f = new JFrame("CD Inventory");
        Container cp = f.getContentPane();
        cp.setLayout(new GridBagLayout());
        cp.setBackground(UIManager.getColor("control"));
        GridBagConstraints c = new GridBagConstraints();
        c.gridx = 0;
        c.gridy = GridBagConstraints.RELATIVE;
        c.gridwidth = 1;
        c.gridheight = 1;
        c.insets = new Insets(2, 2, 2, 2);
        c.anchor = GridBagConstraints.EAST;
        cp.add(l = new JLabel("Item Number:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('a');
        cp.add(l = new JLabel("Item Name:", SwingConstants.CENTER), c);    l.setDisplayedMnemonic('b');
        cp.add(l = new JLabel("Number of Units in Stock:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('c');
        cp.add(l = new JLabel("Price per Unit: $", SwingConstants.CENTER), c);       l.setDisplayedMnemonic('d');
        cp.add(l = new JLabel("Total cost of This Item: $", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('e');
        cp.add(l = new JLabel("Total Value of All Merchandise in Inventory: $",
                               SwingConstants.CENTER), c);   l.setDisplayedMnemonic('f');
        cp.add(l = new JLabel("Item Code:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('g');
        cp.add(l = new JLabel("Product Restocking Fee: $", SwingConstants.CENTER), c);  l.setDisplayedMnemonic('h');
        cp.add(combo, c);
        c.gridx = 1;
        c.gridy = 0;
        c.weightx = 1.0;
        c.fill = GridBagConstraints.HORIZONTAL;
        c.anchor = GridBagConstraints.CENTER;
        cp.add(fields[0] = new JTextField(), c);
        fields[0].setFocusAccelerator('a');
        c.gridx = 1;
        c.gridy = GridBagConstraints.RELATIVE;
        cp.add(fields[1] = new JTextField(), c);         fields[1].setFocusAccelerator('b');
        cp.add(fields[2] = new JTextField(), c);         fields[2].setFocusAccelerator('c');
        cp.add(fields[3] = new JTextField(), c);         fields[3].setFocusAccelerator('d');
        cp.add(fields[4] = new JTextField(), c);         fields[4].setFocusAccelerator('e');
        cp.add(fields[5] = new JTextField(), c);         fields[5].setFocusAccelerator('f');
        cp.add(fields[6] = new JTextField(), c);         fields[6].setFocusAccelerator('g');
        cp.add(fields[7] = new JTextField(), c);         fields[7].setFocusAccelerator('h');
        cp.add(fields[8] = new JTextField(), c);         fields[8].setFocusAccelerator('i');
        cp.add(fields[9] = new JTextField(), c);         fields[9].setFocusAccelerator('j');
        cp.add(fields[10] = new JTextField(), c);       fields[10].setFocusAccelerator('k');
        c.weightx = 0.0;
        c.fill = GridBagConstraints.NONE;
        
        jbtAdd = new JButton("Add");      
        jbtFirst = new JButton("First");        
        jbtPrev = new JButton("Previous");       
        jbtNext = new JButton("Next");       
        jbtLast = new JButton("Last");        
        jbtDelete = new JButton("Delete");       
        jbtModify = new JButton("Modify");
        jbtLogo = new JButton("Logo");
        ImageIcon Logo = new ImageIcon("logo.gif"); //initializing picture for logo Jbutton
        f.getContentPane().add(this.jbtLogo); //add logoBtn to content pane
        this.jbtLogo.setBounds(0, 0, 75, 75); //set logoBtn's size
        this.jbtLogo.setBorderPainted(false); //turn border off for logoBtn
        cp.add(jbtAdd, c);
        cp.add(jbtFirst, c);
        cp.add(jbtPrev, c);
        cp.add(jbtNext, c);
        cp.add(jbtLast, c);
        cp.add(jbtDelete, c);
        cp.add(jbtModify, c);
        cp.add(jbtLogo, c);
        f.pack();
       f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true);
           
// assign actionListener and actionEvent for each button
        jbtAdd.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = - 0;
                
                populateFields(dispProd);
                
            } // end addBtn actionEvent
            
        }); // end addBtn actionListener
        jbtFirst.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = 0;
                populateFields(dispProd);
 
            } // end firstBtn actionEvent
 
        }); // end firstBtn actionListener
 
 
        jbtPrev.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd--;
                if (dispProd < 0)
                {
                    dispProd = productCD.length - 1;
                }
                populateFields(dispProd); 
               
            } // end prevBtn actionEvent
        }); // end prevBtn actionListener
 
        jbtLast.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = productCD.length - 1;
               populateFields(dispProd); 
           
            } // end lastBtn actionEvent
 
        }); // end lastBtn actionListener
 
        jbtNext.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd++;
                if (dispProd > productCD.length - 1)
                {
                    dispProd = 0;
                }
               populateFields(dispProd);
            } // end nextBtn actionEvent
        }); // end nextBtn actionListener
       
         jbtDelete.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            dispProd = 0;
            
            } // end deleteBtn actionEvent
         }); // end deleteBtn actionListener
         
         jbtModify.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            for(int j = 0; j < productCD.length; j++)
            populateFields(dispProd);
            
            } // end modifyBtn actionEvent
         }); // end modifyBtn actionListener
    }
    // event handler for combo box
    public void actionPerformed(ActionEvent e)
    {        
        if(e.getSource() == combo)
        {
               
            System.out.println("Selected option: " + combo.getSelectedIndex() );
        }
    }
    private void populateFields(int index) {
        CD cd = productCD[index];
        fields[0].setText(Long.toString(cd.getNumberCode()));
        fields[1].setText(cd.getName());
        fields[2].setText(Long.toString(cd.getUnits()));
        fields[3].setText(Double.toString(cd.getPrice()));
        fields[4].setText(Double.toString(cd.getSum()));
        fields[5].setText(Double.toString(cd.totalAllInventory(productCD)));
        fields[6].setText(cd.getCode());
        fields[7].setText(Double.toString(cd.getSum()*.05));        
    }
}


class CD {
      
    int itemNumber;
    String name;
    String text;
    int units;
    int item;
    double price;
    String itemCode; 
    String command;
    public CD(int n, String name, double price, int units, String itemCo) {
        itemNumber = n;
        this.name = name;
        this.price = price;
        this.units = units;
        itemCode = itemCo;
    }

    public int getNumberCode() { return itemNumber; }    
    public String getName() { return name; }
    public int getUnits() { return units; }
    public double getPrice() { return price; }
    public double getSum() { return units*price; }
    public String getCode() { return itemCode; }
    public String getActionnCommand() {return command; }
    public int addItem() {return item; }
    public double totalAllInventory(CD[] cds) {
        double total = 0;
        for(int j = 0; j < cds.length; j++)
            total += cds[j].getSum();
        return total;
    }
}

public class InventoryI {
        
    String productnumber;
 
    String name;
 
    String Text;
        
        String fields;
        
        int numberofunits;
 
    double priceperunit;
        
        String itemcode; 
        
       
        

    // Create a new instance of Inventory
    // main constructor for the class
    public InventoryI(String Item_Number, String Item_Name, int Items_in_Stock,
            double Item_Price, String Item_Code) {
        productnumber = Item_Number;
        name = Item_Name;
        numberofunits = Items_in_Stock;
        priceperunit = Item_Price;
                itemcode = Item_Code;
                
                
       
    }        
 
    public void setItemName(String Item_Name) {
    // sets the items name

        name = Item_Name;
    }
 
    public void setItemCode(String Item_Code) {
    // sets the items name

        itemcode = Item_Code;
    }
        public void setItemNumber(String Item_Number) { // Sets the Product =Number
    // for the item
 
        productnumber = Item_Number;
    }
 
    public void setItemsInStock(int Items_in_Stock) { // sets the =number of
    // units in stock
 
        numberofunits = Items_in_Stock;
    }
 
    public void setItemPrice(double Item_Price) { // sets the price of =the
    // item
        priceperunit = Item_Price;
     
    }
       
        public String getItemName() { // returns the Product Name of this item
        return name;
    }
 
     public String getItemCode() { // returns the Product Name of this item
        return itemcode;
        }
         
        public String getItemNumber() { // returns the Product Number of the =item
 
        return productnumber;
    }
 
    public int getItemsInStock() { // returns how many units are in stock
        return numberofunits;
    }
 
    public double getItemPrice() { // returns the price of the item
        return priceperunit;
    }
 
    public double getInventoryIValue() { // returns the total value of =the stock
    // for this item
        return priceperunit * numberofunits;
    }
        
    public static double getTotalValueOfAllInventory(InventoryI [] inv) {
    
            double tot = 0.0;
        
        for(int i = 0; i < inv.length; i++)   
                
            tot += inv[i].getInventoryIValue();
        
        return tot;
        
    }
    
    public static InventoryI[] sort(InventoryI [] inventory)
    {
        InventoryI temp[] = new InventoryI[1];
         
        //sorting the array using Bubble Sort
        for(int j = 0; j < inventory.length - 1; j++)
        {
         
            for(int k = 0; k < inventory.length - 1; k++)
            {
         
                if(inventory[k].getItemName().compareToIgnoreCase(inventory[k+1].getItemName()) > 0)
                {
         
                    temp[0] = inventory[k];
                    inventory[k] = inventory[k+1];
                    inventory[k+1] = temp[0];
         
                }//end if
         
            }//end for loop
         
        }//end for loop

        
        return inventory;
                
    }
    
    public String toString()
    {
        StringBuffer sb = new StringBuffer();
        
                
        sb.append("CD Title:      \t").append(name).append("\n");
                sb.append("Item Code:      \t").append(itemcode).append("\n");
        sb.append("Item #:           \t").append(productnumber).append("\n");
        sb.append("Number in stock:\t").append(numberofunits).append("\n");
        sb.append("Price:          \t").append(String.format("$%.2f%n", priceperunit));
        sb.append("Inventory Value:\t").append(String.format("$%.2f%n", this.getInventoryIValue()));
 
        return sb.toString();
                
                
    }
    
    
}

I've got two day to understand and finish this program and I am lost and scared of failing my class. I have read so many tutorials that I wake up talking in java code. lol
I'm sorry for venting but I needed it. I want to thank you guys forhelping me understand the parts that I didn. I wish you guys were my instructor for this class, I would probably be a java pro.
Reply With Quote  
Join Date: Dec 2004
Location: London or Slovakia
Posts: 2,630
Reputation: peter_budo is just really nice peter_budo is just really nice peter_budo is just really nice peter_budo is just really nice 
Rep Power: 12
Solved Threads: 311
Moderator
Featured Poster
peter_budo's Avatar
peter_budo peter_budo is offline Offline
Code tags enforcer

Re: Inventory program part 5 help

  #33  
Sep 15th, 2007
Working version
public void initCD() {
        //Create an array    
        productCD = new CD[10];

        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656"); 

not working version
public void initCD() {
        //Create an array    
        productCD = new CD[11];
        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656"); 

Think about it, why is it not working?

An consider following possible changes
in InventoryMain.java
public void initCD() {
        //Create an array    
        productCD = new CD[20];
     
        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656"); 
        	
        for(int i = 10; i < productCD.length; i++)
        {
        	productCD[i] = new CD();
        }     
    }
and in CD.java
public CD() {}
Learn to see in another's calamity the ills which you should avoid.
Publilius Syrus
(~100 BC)

LJC - London Java Community, JAVAWUG (Java Web User Group), Coding the Architecture
Reply With Quote  
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #34  
Sep 15th, 2007
Okay, I got the add button to work. all the buttons work except the delete, modify, and the save and search buttons which i have not added yet. here is the code:

import java.awt.*; //import all java.awt
import java.awt.event.*; //import all java.awt.event
import java.util.*; //import all java.util
import javax.swing.*; //import all javax.swing
import java.text.NumberFormat; // used to format currency
 
class InventoryMain extends Frame implements ActionListener
{

    CD[] productCD;
    JTextField[] fields;
    NumberFormat nf;
    JButton jbtLogo, jbtAdd, jbtFirst, jbtPrev, jbtNext, jbtLast, jbtDelete, jbtModify;    
    JLabel label; // logo   
    JPanel buttonJPanel; // panel to hold buttons
    String nameText;
    JComboBox combo;
    JTextArea textArea;
    private int index; 
    int i; // varialbe for looping
    double total = 0; // variable for total inventory   
    static int dispProd = 0; // variable for actionEvents   
    static int disptextArea;
    static int dispIndex;
    
    
    public static void main(String[] args) 
    {
           
       
        try 
        {
            UIManager.setLookAndFeel(
                    "com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
        } 
        catch (Exception e) 
        {
            System.err.println(e.getClass().getName() + ": " + e.getMessage());
        }
        InventoryMain test = new InventoryMain();
        test.initCD();
        test.showGUI();
        test.populateFields(0);
    }
  
   
    
    public void initCD() {
        //Create an array    
        productCD = new CD[20];
     
        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656");        
        
     for(int i = 10; i < productCD.length; i++)
        {
            productCD[i] = new CD();
        }     
    }
     
     
        
    private void showGUI() {
        JLabel l;
        JButton b;
        fields = new JTextField[11];
        combo = new JComboBox();
        for(int j = 0; j < productCD.length; j++)
        combo.addItem(productCD[j].getName());
        combo.addActionListener(this);
          Icon logo = new ImageIcon("C:/logo.jpg"); // load logo
        label = new JLabel(logo); // create logo label
        label.setToolTipText("Company Logo"); // create tooltip
            textArea = new JTextArea(productCD[3] + "\n"); // create textArea for
                                                        // product display
        JFrame f = new JFrame("CD Inventory");
        Container cp = f.getContentPane();
        cp.setLayout(new GridBagLayout());
        cp.setBackground(UIManager.getColor("control"));
        GridBagConstraints c = new GridBagConstraints();
        c.gridx = 0;
        c.gridy = GridBagConstraints.RELATIVE;
        c.gridwidth = 1;
        c.gridheight = 1;
        c.insets = new Insets(2, 2, 2, 2);
        c.anchor = GridBagConstraints.EAST;
        cp.add(l = new JLabel("Item Number:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('a');
        cp.add(l = new JLabel("Item Name:", SwingConstants.CENTER), c);    l.setDisplayedMnemonic('b');
        cp.add(l = new JLabel("Number of Units in Stock:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('c');
        cp.add(l = new JLabel("Price per Unit: $", SwingConstants.CENTER), c);       l.setDisplayedMnemonic('d');
        cp.add(l = new JLabel("Total cost of This Item: $", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('e');
        cp.add(l = new JLabel("Total Value of All Merchandise in Inventory: $",
                               SwingConstants.CENTER), c);   l.setDisplayedMnemonic('f');
        cp.add(l = new JLabel("Item Code:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('g');
        cp.add(l = new JLabel("Product Restocking Fee: $", SwingConstants.CENTER), c);  l.setDisplayedMnemonic('h');
        cp.add(combo, c);
        c.gridx = 1;
        c.gridy = 0;
        c.weightx = 1.0;
        c.fill = GridBagConstraints.HORIZONTAL;
        c.anchor = GridBagConstraints.CENTER;
        cp.add(fields[0] = new JTextField(), c);
        fields[0].setFocusAccelerator('a');
        c.gridx = 1;
        c.gridy = GridBagConstraints.RELATIVE;
        cp.add(fields[1] = new JTextField(), c);         fields[1].setFocusAccelerator('b');
        cp.add(fields[2] = new JTextField(), c);         fields[2].setFocusAccelerator('c');
        cp.add(fields[3] = new JTextField(), c);         fields[3].setFocusAccelerator('d');
        cp.add(fields[4] = new JTextField(), c);         fields[4].setFocusAccelerator('e');
        cp.add(fields[5] = new JTextField(), c);         fields[5].setFocusAccelerator('f');
        cp.add(fields[6] = new JTextField(), c);         fields[6].setFocusAccelerator('g');
        cp.add(fields[7] = new JTextField(), c);         fields[7].setFocusAccelerator('h');
        cp.add(fields[8] = new JTextField(), c);         fields[8].setFocusAccelerator('i');
        cp.add(fields[9] = new JTextField(), c);         fields[9].setFocusAccelerator('j');
        cp.add(fields[10] = new JTextField(), c);       fields[10].setFocusAccelerator('k');
        c.weightx = 0.0;
        c.fill = GridBagConstraints.NONE;
        
        jbtAdd = new JButton("Add");      
        jbtFirst = new JButton("First");        
        jbtPrev = new JButton("Previous");       
        jbtNext = new JButton("Next");       
        jbtLast = new JButton("Last");        
        jbtDelete = new JButton("Delete");       
        jbtModify = new JButton("Modify");
        jbtLogo = new JButton("Logo");
        ImageIcon Logo = new ImageIcon("logo.gif"); //initializing picture for logo Jbutton
        f.getContentPane().add(this.jbtLogo); //add logoBtn to content pane
        this.jbtLogo.setBounds(0, 0, 75, 75); //set logoBtn's size
        this.jbtLogo.setBorderPainted(false); //turn border off for logoBtn
        cp.add(jbtAdd, c);
        cp.add(jbtFirst, c);
        cp.add(jbtPrev, c);
        cp.add(jbtNext, c);
        cp.add(jbtLast, c);
        cp.add(jbtDelete, c);
        cp.add(jbtModify, c);
        cp.add(jbtLogo, c);
        f.pack();
       f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true);
           
// assign actionListener and actionEvent for each button
        jbtAdd.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = 11;
                
                populateFields(dispProd);
                
            } // end addBtn actionEvent
            
        }); // end addBtn actionListener
        jbtFirst.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = 0;
                populateFields(dispProd);
 
            } // end firstBtn actionEvent
 
        }); // end firstBtn actionListener
 
 
        jbtPrev.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd--;
                if (dispProd < 0)
                {
                    dispProd = productCD.length - 1;
                }
                populateFields(dispProd); 
               
            } // end prevBtn actionEvent
        }); // end prevBtn actionListener
 
        jbtLast.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = productCD.length - 1;
               populateFields(dispProd); 
           
            } // end lastBtn actionEvent
 
        }); // end lastBtn actionListener
 
        jbtNext.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd++;
                if (dispProd > productCD.length - 1)
                {
                    dispProd = 0;
                }
               populateFields(dispProd);
            } // end nextBtn actionEvent
        }); // end nextBtn actionListener
       
         jbtDelete.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            dispProd = 0;
            
            } // end deleteBtn actionEvent
         }); // end deleteBtn actionListener
         
         jbtModify.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            for(int j = 0; j < productCD.length; j++)
            populateFields(dispProd);
            
            } // end modifyBtn actionEvent
         }); // end modifyBtn actionListener
    }
    // event handler for combo box
    public void actionPerformed(ActionEvent e)
    {        
        if(e.getSource() == combo)
        {
               
            System.out.println("Selected option: " + combo.getSelectedIndex() );
        }
    }
    private void populateFields(int index) {
        CD cd = productCD[index];
        fields[0].setText(Long.toString(cd.getNumberCode()));
        fields[1].setText(cd.getName());
        fields[2].setText(Long.toString(cd.getUnits()));
        fields[3].setText(Double.toString(cd.getPrice()));
        fields[4].setText(Double.toString(cd.getSum()));
        fields[5].setText(Double.toString(cd.totalAllInventory(productCD)));
        fields[6].setText(cd.getCode());
        fields[7].setText(Double.toString(cd.getSum()*.05));        
    }
}

class CD {
    public CD() {}
      
    int itemNumber;
    String name;
    String text;
    int units;
    int item;
    double price;
    String itemCode; 
    String command;
    public CD(int n, String name, double price, int units, String itemCo) {
        itemNumber = n;
        this.name = name;
        this.price = price;
        this.units = units;
        itemCode = itemCo;
    }

    public int getNumberCode() { return itemNumber; }    
    public String getName() { return name; }
    public int getUnits() { return units; }
    public double getPrice() { return price; }
    public double getSum() { return units*price; }
    public String getCode() { return itemCode; }
    public String getActionnCommand() {return command; }
    public int addItem() {return item; }
    public double totalAllInventory(CD[] cds) {
        double total = 0;
        for(int j = 0; j < cds.length; j++)
            total += cds[j].getSum();
        return total;
    }
}

public class InventoryI {
        
    String productnumber;
 
    String name;
 
    String Text;
        
        String fields;
        
        int numberofunits;
 
    double priceperunit;
        
        String itemcode; 
        
       
        

    // Create a new instance of Inventory
    // main constructor for the class
    public InventoryI(String Item_Number, String Item_Name, int Items_in_Stock,
            double Item_Price, String Item_Code) {
        productnumber = Item_Number;
        name = Item_Name;
        numberofunits = Items_in_Stock;
        priceperunit = Item_Price;
                itemcode = Item_Code;
                
                
       
    }        
 
    public void setItemName(String Item_Name) {
    // sets the items name

        name = Item_Name;
    }
 
    public void setItemCode(String Item_Code) {
    // sets the items name

        itemcode = Item_Code;
    }
        public void setItemNumber(String Item_Number) { // Sets the Product =Number
    // for the item
 
        productnumber = Item_Number;
    }
 
    public void setItemsInStock(int Items_in_Stock) { // sets the =number of
    // units in stock
 
        numberofunits = Items_in_Stock;
    }
 
    public void setItemPrice(double Item_Price) { // sets the price of =the
    // item
        priceperunit = Item_Price;
     
    }
       
        public String getItemName() { // returns the Product Name of this item
        return name;
    }
 
     public String getItemCode() { // returns the Product Name of this item
        return itemcode;
        }
         
        public String getItemNumber() { // returns the Product Number of the =item
 
        return productnumber;
    }
 
    public int getItemsInStock() { // returns how many units are in stock
        return numberofunits;
    }
 
    public double getItemPrice() { // returns the price of the item
        return priceperunit;
    }
 
    public double getInventoryIValue() { // returns the total value of =the stock
    // for this item
        return priceperunit * numberofunits;
    }
        
    public static double getTotalValueOfAllInventory(InventoryI [] inv) {
    
            double tot = 0.0;
        
        for(int i = 0; i < inv.length; i++)   
                
            tot += inv[i].getInventoryIValue();
        
        return tot;
        
    }
    
    public static InventoryI[] sort(InventoryI [] inventory)
    {
        InventoryI temp[] = new InventoryI[1];
         
        //sorting the array using Bubble Sort
        for(int j = 0; j < inventory.length - 1; j++)
        {
         
            for(int k = 0; k < inventory.length - 1; k++)
            {
         
                if(inventory[k].getItemName().compareToIgnoreCase(inventory[k+1].getItemName()) > 0)
                {
         
                    temp[0] = inventory[k];
                    inventory[k] = inventory[k+1];
                    inventory[k+1] = temp[0];
         
                }//end if
         
            }//end for loop
         
        }//end for loop

        
        return inventory;
                
    }
    
    public String toString()
    {
        StringBuffer sb = new StringBuffer();
        
                
        sb.append("CD Title:      \t").append(name).append("\n");
                sb.append("Item Code:      \t").append(itemcode).append("\n");
        sb.append("Item #:           \t").append(productnumber).append("\n");
        sb.append("Number in stock:\t").append(numberofunits).append("\n");
        sb.append("Price:          \t").append(String.format("$%.2f%n", priceperunit));
        sb.append("Inventory Value:\t").append(String.format("$%.2f%n", this.getInventoryIValue()));
 
        return sb.toString();
                
                
    }
    
    
}


I feel like I'm never going to finish this on time. I wish my class instructor was as helpfull as you. thanks.
Reply With Quote  
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #35  
Sep 15th, 2007
Can some one give me some advisee as to what I am doing wrong. I knoow its going to be something simple that I'm overlooking, ive been workinng onn this for the last 4 days and I cant think strait anymore. thanks.
Reply With Quote  
Join Date: Dec 2004
Location: London or Slovakia
Posts: 2,630
Reputation: peter_budo is just really nice peter_budo is just really nice peter_budo is just really nice peter_budo is just really nice 
Rep Power: 12
Solved Threads: 311
Moderator
Featured Poster
peter_budo's Avatar
peter_budo peter_budo is offline Offline
Code tags enforcer

Re: Inventory program part 5 help

  #36  
Sep 16th, 2007
This your last post
Originally Posted by dkdeleon68 View Post
Can some one give me some advisee as to what I am doing wrong. I knoow its going to be something simple that I'm overlooking, ive been workinng onn this for the last 4 days and I cant think strait anymore. thanks.

and this is post befor it
Originally Posted by dkdeleon68 View Post
Okay, I got the add button to work. all the buttons work except the delete, modify, and the save and search buttons which i have not added yet. here is the code:
You did not provide any info on what is happening, so we have no idea what can be wrong...

Anyway what is difference between add and save ?
Learn to see in another's calamity the ills which you should avoid.
Publilius Syrus
(~100 BC)

LJC - London Java Community, JAVAWUG (Java Web User Group), Coding the Architecture
Reply With Quote  
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #37  
Sep 16th, 2007
You did not provide any info on what is happening, so we have no idea what can be wrong...

I'm sorry, I cant think strait from looking at a computer screen for 20 hours.

the save button needs to save the inventory to a C:\data\inventory.dat file.
Reply With Quote  
Join Date: Mar 2007
Posts: 25
Reputation: dkdeleon68 is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
dkdeleon68 dkdeleon68 is offline Offline
Light Poster

Re: Inventory program part 5 help

  #38  
Sep 16th, 2007
Here is my code again, im not reseaving any errors but the delete, modify buttons do not do what they are needed to do, and the save and search buttons which i have not added yet. here is the code:


import java.awt.*; //import all java.awt
import java.awt.event.*; //import all java.awt.event
import java.util.*; //import all java.util
import javax.swing.*; //import all javax.swing
import java.text.NumberFormat; // used to format currency
 
class InventoryMain extends Frame implements ActionListener
{

    CD[] productCD;
    JTextField[] fields;
    NumberFormat nf;
    JButton jbtLogo, jbtAdd, jbtFirst, jbtPrev, jbtNext, jbtLast, jbtDelete, jbtModify;    
    JLabel label; // logo   
    JPanel buttonJPanel; // panel to hold buttons
    String nameText;
    JComboBox combo;
    JTextArea textArea;
    private int index; 
    int i; // varialbe for looping
    double total = 0; // variable for total inventory   
    static int dispProd = 0; // variable for actionEvents   
    static int disptextArea;
    static int dispIndex;
    
    
    public static void main(String[] args) 
    {
           
       
        try 
        {
            UIManager.setLookAndFeel(
                    "com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
        } 
        catch (Exception e) 
        {
            System.err.println(e.getClass().getName() + ": " + e.getMessage());
        }
        InventoryMain test = new InventoryMain();
        test.initCD();
        test.showGUI();
        test.populateFields(0);
    }
  
   
    
    public void initCD() {
        //Create an array    
        productCD = new CD[20];
     
        //fill in the classes
        productCD[0] = new CD( 1, "Crowbar" , 20.00, 10, "00722");
        productCD[1] = new CD( 2, "Pantera" , 20.00, 10, "00263");
        productCD[2] = new CD( 3, "Ozzy" , 15.00, 10, "00142");
        productCD[3] = new CD( 4, "Soulfly" , 18.00, 10, "00553");
        productCD[4] = new CD( 5, "Down", 24.00, 10, "00789");
        productCD[5] = new CD( 6, "God Forbid" , 10.00, 10, "00712");
        productCD[6] = new CD( 7, "Black Label Society" , 16.00, 10, "00458" );
        productCD[7] = new CD( 8, "Saint Vitus" , 15.00, 10, "00889");
        productCD[8] = new CD( 9, "Clearlight" , 15.00, 10, "00897");
        productCD[9] = new CD( 10, "Testament" , 15.00, 10, "00656");        
        
     for(int i = 10; i < productCD.length; i++)
        {
            productCD[i] = new CD();
        }     
    }
     
     
        
    private void showGUI() {
        JLabel l;
        JButton b;
        fields = new JTextField[11];
        combo = new JComboBox();
        for(int j = 0; j < productCD.length; j++)
        combo.addItem(productCD[j].getName());
        combo.addActionListener(this);
          Icon logo = new ImageIcon("C:/logo.jpg"); // load logo
        label = new JLabel(logo); // create logo label
        label.setToolTipText("Company Logo"); // create tooltip
            textArea = new JTextArea(productCD[3] + "\n"); // create textArea for
                                                        // product display
        JFrame f = new JFrame("CD Inventory");
        Container cp = f.getContentPane();
        cp.setLayout(new GridBagLayout());
        cp.setBackground(UIManager.getColor("control"));
        GridBagConstraints c = new GridBagConstraints();
        c.gridx = 0;
        c.gridy = GridBagConstraints.RELATIVE;
        c.gridwidth = 1;
        c.gridheight = 1;
        c.insets = new Insets(2, 2, 2, 2);
        c.anchor = GridBagConstraints.EAST;
        cp.add(l = new JLabel("Item Number:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('a');
        cp.add(l = new JLabel("Item Name:", SwingConstants.CENTER), c);    l.setDisplayedMnemonic('b');
        cp.add(l = new JLabel("Number of Units in Stock:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('c');
        cp.add(l = new JLabel("Price per Unit: $", SwingConstants.CENTER), c);       l.setDisplayedMnemonic('d');
        cp.add(l = new JLabel("Total cost of This Item: $", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('e');
        cp.add(l = new JLabel("Total Value of All Merchandise in Inventory: $",
                               SwingConstants.CENTER), c);   l.setDisplayedMnemonic('f');
        cp.add(l = new JLabel("Item Code:", SwingConstants.CENTER), c);   l.setDisplayedMnemonic('g');
        cp.add(l = new JLabel("Product Restocking Fee: $", SwingConstants.CENTER), c);  l.setDisplayedMnemonic('h');
        cp.add(combo, c);
        c.gridx = 1;
        c.gridy = 0;
        c.weightx = 1.0;
        c.fill = GridBagConstraints.HORIZONTAL;
        c.anchor = GridBagConstraints.CENTER;
        cp.add(fields[0] = new JTextField(), c);
        fields[0].setFocusAccelerator('a');
        c.gridx = 1;
        c.gridy = GridBagConstraints.RELATIVE;
        cp.add(fields[1] = new JTextField(), c);         fields[1].setFocusAccelerator('b');
        cp.add(fields[2] = new JTextField(), c);         fields[2].setFocusAccelerator('c');
        cp.add(fields[3] = new JTextField(), c);         fields[3].setFocusAccelerator('d');
        cp.add(fields[4] = new JTextField(), c);         fields[4].setFocusAccelerator('e');
        cp.add(fields[5] = new JTextField(), c);         fields[5].setFocusAccelerator('f');
        cp.add(fields[6] = new JTextField(), c);         fields[6].setFocusAccelerator('g');
        cp.add(fields[7] = new JTextField(), c);         fields[7].setFocusAccelerator('h');
        cp.add(fields[8] = new JTextField(), c);         fields[8].setFocusAccelerator('i');
        cp.add(fields[9] = new JTextField(), c);         fields[9].setFocusAccelerator('j');
        cp.add(fields[10] = new JTextField(), c);       fields[10].setFocusAccelerator('k');
        c.weightx = 0.0;
        c.fill = GridBagConstraints.NONE;
        
        jbtAdd = new JButton("Add");      
        jbtFirst = new JButton("First");        
        jbtPrev = new JButton("Previous");       
        jbtNext = new JButton("Next");       
        jbtLast = new JButton("Last");        
        jbtDelete = new JButton("Delete");       
        jbtModify = new JButton("Modify");
        jbtLogo = new JButton("Logo");
        ImageIcon Logo = new ImageIcon("logo.gif"); //initializing picture for logo Jbutton
        f.getContentPane().add(this.jbtLogo); //add logoBtn to content pane
        this.jbtLogo.setBounds(0, 0, 75, 75); //set logoBtn's size
        this.jbtLogo.setBorderPainted(false); //turn border off for logoBtn
        cp.add(jbtAdd, c);
        cp.add(jbtFirst, c);
        cp.add(jbtPrev, c);
        cp.add(jbtNext, c);
        cp.add(jbtLast, c);
        cp.add(jbtDelete, c);
        cp.add(jbtModify, c);
        cp.add(jbtLogo, c);
        f.pack();
       f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true);
           
// assign actionListener and actionEvent for each button
        jbtAdd.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = 11;
                
                populateFields(dispProd);
                
            } // end addBtn actionEvent
            
        }); // end addBtn actionListener
        jbtFirst.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = 0;
                populateFields(dispProd);
 
            } // end firstBtn actionEvent
 
        }); // end firstBtn actionListener
 
 
        jbtPrev.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd--;
                if (dispProd < 0)
                {
                    dispProd = productCD.length - 1;
                }
                populateFields(dispProd); 
               
            } // end prevBtn actionEvent
        }); // end prevBtn actionListener
 
        jbtLast.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd = productCD.length - 1;
               populateFields(dispProd); 
           
            } // end lastBtn actionEvent
 
        }); // end lastBtn actionListener
 
        jbtNext.addActionListener(new ActionListener()
 
        {
            public void actionPerformed(ActionEvent ae)
            {
                dispProd++;
                if (dispProd > productCD.length - 1)
                {
                    dispProd = 0;
                }
               populateFields(dispProd);
            } // end nextBtn actionEvent
        }); // end nextBtn actionListener
       
         jbtDelete.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            dispProd = 0;
            
            } // end deleteBtn actionEvent
         }); // end deleteBtn actionListener
         
         jbtModify.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                
            for(int j = 0; j < productCD.length; j++)
            populateFields(dispProd);
            
            } // end modifyBtn actionEvent
         }); // end modifyBtn actionListener
    }
    // event handler for combo box
    public void actionPerformed(ActionEvent e)
    {        
        if(e.getSource() == combo)
        {
               
            System.out.println("Selected option: " + combo.getSelectedIndex() );
        }
    }
    private void populateFields(int index) {
        CD cd = productCD[index];
        fields[0].setText(Long.toString(cd.getNumberCode()));
        fields[1].setText(cd.getName());
        fields[2].setText(Long.toString(cd.getUnits()));
        fields[3].setText(Double.toString(cd.getPrice()));
        fields[4].setText(Double.toString(cd.getSum()));
        fields[5].setText(Double.toString(cd.totalAllInventory(productCD)));
        fields[6].setText(cd.getCode());
        fields[7].setText(Double.toString(cd.getSum()*.05));        
    }
}