ive doing a homework which we need to provide buttons (GUI) for a vending machine.
the vending machine takes dollars, quaters, dimes, and nickels, and the vending machine has drinks (60 cents) and snacks (45 cents).

we done a code were it does work through "SCANNER", but now we have to create a GUI for it.

/**
* VendingMachineCUI: A program that emulates a vending machine. It uses a 
* VendingMachine object to represent a vending machine, and interacts with 
* the user through the console.
*/ 

import java.util.*;        // for Scanner class



public class VendingMachineCUI
{
    public static void main (String[] args)
    {
        char    action;                // Store user's input characters
        String    strDrinkAvailable,     // whether drink is sold out
                strSnackAvailable;    // whether snack is sold out
        Change    change;                // Used to keep a change
        
        // Create a Scanner object for input
        Scanner keyboard = new Scanner (System.in);
        
        // Create a vending machine object
        VendingMachine vm = new VendingMachine ();
        
        while (true)
        {
            if (vm.isItemAvailable (VendingMachine.ITEM_TYPE_DRINK))
                strDrinkAvailable = "";
            else
                strDrinkAvailable = " (sold out)";
            
            if (vm.isItemAvailable (VendingMachine.ITEM_TYPE_SNACK))
                strSnackAvailable = "";
            else
                strSnackAvailable = " (sold out)";
            
            // Display the menu
            System.out.println (
                "A - Drink" + strDrinkAvailable + "\n" + 
                "B - Snack" + strSnackAvailable + "\n\n" + 
                
                "D - Enter a dollar\n" + 
                "Q - Enter a quarter\n" + 
                "M - Enter a dime\n" + 
                "N - Enter a nickel\n\n" + 
                
                "R - Return change\n\n");
            
            // Display the amount entered in the machine
            System.out.println ("Amount available: " + vm.getAmountAvailable () + "\n\n");
            
            // Get user's action
            System.out.print ("Your action: ");
            action = keyboard.next ().charAt (0);
            action = Character.toUpperCase (action);
            
            // Process
            switch (action)
            {
            case 'A':
                if (! vm.isItemAvailable (VendingMachine.ITEM_TYPE_DRINK))
                    System.out.println ("Sorry, it's sold out");
                else if (! vm.isMoneyEnough (VendingMachine.ITEM_TYPE_DRINK))
                    System.out.println ("Sorry, not enough money for the purchase");
                else if (vm.buyItem (VendingMachine.ITEM_TYPE_DRINK))
                    System.out.println ("Here is your drink");
                break;
            case 'B':
                if (! vm.isItemAvailable (VendingMachine.ITEM_TYPE_SNACK))
                    System.out.println ("Sorry, it's sold out");
                else if (! vm.isMoneyEnough (VendingMachine.ITEM_TYPE_SNACK))
                    System.out.println ("Sorry, not enough money for the purchase");
                else if (vm.buyItem (VendingMachine.ITEM_TYPE_SNACK))
                    System.out.println ("Here is your snack");
                break;
            case 'D':
                vm.inputDollar ();
                break;
            case 'Q':
                vm.inputQuarter ();
                break;
            case 'M':
                vm.inputDime ();
                break;
            case 'N':
                vm.inputNickel ();
                break;
            case 'R':
                change = vm.makeChange ();
                
                // Display the coins to the user 
                System.out.println (
                    "# of quarters: " + change.getQuarters () + "\n" + 
                    "# of dimes: " + change.getDimes () + "\n" + 
                    "# of nickles: " + change.getNickels () + "\n");
                
                break;
            
            default:
                System.out.println ("Sorry, " + action + " is an invalid option");
                break;        // simply do nothing for a invalid input    
            
            }    // end of switch
            
            System.out.println ("\n");        // get a vertical space
            
                    
        } // end of while
    }
}

thats the scanner one, it does work (since i have other programs which displays the change, and everyything else).

but i dont know where to start...

ive done one program with GUI, and was still strugglin about it.

i know the basics, such as...

inputing

import java.awt.*;         
import java.awt.event.*;

to activate the whole "event" thing through the eAction..

any help will be appreciateed...

thanks.

For start you can search java forum for similar topics as they been discussed over time often...

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.