![]() |
| ||
| Cannot figure out why I'm getting these Errors my code is posted below the program is to be very simple just just a button a choice box a text box and a canvas the user is to be able to select what item they want and then the price appears in the label....then the user is able to put in a quantity and when they hit order the program should calculate the price and display it nice and neat in the canvas....I'm new to Java and ...if this were C++ I could do it in an hour I just don't understand why it's not working...please someone help thank you import java.awt.*; import java.applet.Applet; import java.awt.event.*; public class grocerystore extends Applet{ private Button order = new Button("Order"); private Label price = new Label("Your price will appear here"); private Choice food = new Choice(); private TextField quantity = new TextField(); double quantitySelected; double eggs = 1.90; double milk = 1.47; double bread = 2.12; double total; display output = new display(); public void init() { add(order); add(price); add(quantity); add(food); food.add("Select your food"); food.add("Eggs"); food.add("Milk"); food.add("Bread"); order.addActionListener(this); food.addItemListener(this); add(output); output.setSize(250,100); order.addActionListener(this) food.addActionListener(this) } class display extends Canvas implements ActionListener, ItemListener { int itemSelected = food.getSelectedIndex(); public void actionPerformed(ActionEvent action) { quantitySelected = new Double(quantity.getText()).doubleValue(); if (itemSelected==1) total = quantitySelected * eggs; if (itemSelected==2) total = quantitySelected * milk; if (itemSelected==3) total = quantitySelected * bread; } public void itemStateChanged(ItemEvent event) { if (itemSelected==1) price.setText("The price of a dozen eggs is " + eggs); if (itemSelected==2) price.setText("The price of a quart of milk is " + milk); if (itemSelected==3) price.setText("The price of a loaf of bread is " + bread); } public void paint(Graphics g){ if (itemSelected==1){ g.drawString("You purchased " + quantitySelected + "dozen eggs",20,20); g.drawString("for a total of " + total,20,30); } } } } |
| ||
| Re: Cannot figure out why I'm getting these Errors whats the error? |
| ||
| Re: Cannot figure out why I'm getting these Errors First thing I see is that you missed semicolons on the following lines: order.addActionListener(this) food.addActionListener(this) |
| ||
| Re: Cannot figure out why I'm getting these Errors another thing ... quick paste into eclipse and it suggests that you cast "this" with (ActionListener) and (ItemListener) .... Also I think you may have meant addItemListener on the second food.add* line. order.addActionListener((ActionListener)this); food.addItemListener((ItemListener)this); order.addActionListener((ActionListener)this); food.addItemListener((ItemListener)this); //edit ... left off the semicolons myself that time ;) |
| ||
| Re: Cannot figure out why I'm getting these Errors well......after an hour of staring and trying things I come to another dead end......thank you for the help before I appreciate it but now my applet doesn't initialize....and all I get is a blank rectangle I get no errors so I'm not sure what I'm doing wrong...I'll keep working at it but if someone finds something before I do I'd appreciate it a lot Thank you in advance import java.awt.*; import java.applet.Applet; import java.awt.event.*; public class grocerystore extends Applet{ private Button order = new Button("Order"); private Label price = new Label("Your price will appear here"); private Choice food = new Choice(); private TextField quantity = new TextField(); double quantitySelected; double eggs = 1.90; double milk = 1.47; double bread = 2.12; double total; display output = new display(); public void init() { add(order); add(price); add(quantity); add(food); food.add("Select your food"); food.add("Eggs"); food.add("Milk"); food.add("Bread"); add(output); output.setSize(250,100); order.addActionListener((ActionListener)this); food.addItemListener((ItemListener)this); order.addActionListener((ActionListener)this); food.addItemListener((ItemListener)this); } class display extends Canvas implements ActionListener, ItemListener { int itemSelected = food.getSelectedIndex(); public void actionPerformed(ActionEvent action) { quantitySelected = new Double(quantity.getText()).doubleValue(); if (itemSelected==1) total = quantitySelected * eggs; if (itemSelected==2) total = quantitySelected * milk; if (itemSelected==3) total = quantitySelected * bread; } public void itemStateChanged(ItemEvent event) { if (itemSelected==1) price.setText("The price of a dozen eggs is " + eggs); if (itemSelected==2) price.setText("The price of a quart of milk is " + milk); if (itemSelected==3) price.setText("The price of a loaf of bread is " + bread); } public void paint(Graphics g){ if (itemSelected==1){ g.drawString("You purchased " + quantitySelected + "dozen eggs",20,20); g.drawString("for a total of " + total,20,30); } } } } |
| ||
| Re: Cannot figure out why I'm getting these Errors Something is wrong with how you use the ActionListner(). //order.addActionListener((ActionListener)this); //food.addItemListener((ItemListener)this); //order.addActionListener((ActionListener)this); //food.addItemListener((ItemListener)this); in the init() method, those are cuasing the applet not to intialize correctly and why do you do it twice? EDIT: I suspect that you are handleing the action events wrong. |
| ||
| Re: Cannot figure out why I'm getting these Errors Alright well I took out the extra two lines so they aren't in there twice and instead of using the keyword this I applied them to thier respective areas....price and output but it still won't initialize I even tried it keeping it with the keyword this and still no progress....... order.addActionListener((ActionListener)output); food.addItemListener((ItemListener)price); order.addActionListener((ActionListener)this); food.addItemListener((ItemListener)this); niether way works :-( EDIT----ok well I worked on it some more and I got the applet to initalize when I commented out the second line so I had order.addActionListener((ActionListener)output); //food.addItemListener((ItemListener)price); it initialized but didn't do anything when I entered a int into the text box and hit the order button I don't know why it won't initalize with the second line |
| ||
| Re: Cannot figure out why I'm getting these Errors check how the action is processed, and make sure the html code is correctly calling the applet with all tags closed, personally i dont know why it wont intialize either, looks correct. |
| ||
| Re: Cannot figure out why I'm getting these Errors <html> <body> <applet code="grocerystore.java"width="250"height="250"> </applet> </body> </html> that is the html code I'm using.....it's a simple webpage used to just test the code I'm getting a cast exception on line 30 and 31 which are the addActionListener and the addItemListener....I don't know why I can't figure it out.....:-( I e-mailed my professor with the question...I'm gonna see what he has to say about it.....and I'll work on it some more....if you looked at it some more that would be great one of these times my eyes are going to start bleeding from staring too long....... |
| ||
| Re: Cannot figure out why I'm getting these Errors if u get a solution post back so I can learn too :) |
| All times are GMT -4. The time now is 9:24 am. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC