kostenloser Webspace werbefrei: lima-city


Problem bei get.Text() (Applet)

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    jocko

    Kostenloser Webspace von jocko

    jocko hat kostenlosen Webspace.

    Hallo Kollegen,

    Ich muss ein kleines Applet-Programm schreiben.
    Die Idee ist ein BMI-Berechner.

    Nun hab ich folgenden Code schon geschrieben, aber es klappt nicht. Die eingegebenen Werte können nicht verrechnet/ausgelesen werden.
    Ich hoffe Ihr könnt mir Helfen.
    Die Idee ist, dass sich das Fenster öffnet, man dann die Zahlen eingibt, Berechnen drückt und unten der BMI-Wert aufgegeben wird.

    Besten Dank für eure Mühe.



    import java.awt.*;
    import java.awt.event.*;
    import java.applet.*;
    
    public class Spiel2 extends Applet{
    	TextField tf1;
    	TextField tf2;
    	TextField tf3;
    	Button startTaste;
    	float groesse;
    	int gewicht;
    	float bmi;
    
    
    	
    	public void init() {
    		
    		startTaste = new Button("BMI Berechnen");
    		tf1 = new TextField();
    		tf2 = new TextField();
    		tf3 = new TextField();
    		
    		
    		tf1.setColumns(5);
    		tf2.setColumns(5);
    		tf3.setColumns(20);
    
    
    
    
    		try{
    
    			gewicht = Integer.valueOf(tf1.getText()).intValue();
    			groesse = Float.valueOf(tf2.getText()).floatValue();
    
    		    
    			}catch(Exception e){
    			 System.out.println("Bitte geben Sie nur Zahlen ein.");
    			}
    
    			
    		
    		add(tf1); 
    		add(tf2);
    		add(startTaste);
    		add(tf3);
    		
    		startTaste.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent e) {
    
    				bmi = gewicht/(groesse*groesse);
    				String bmistring=Float.toString(bmi);
    				
    			tf3.setText(bmistring);
    			}
    			});
    	}
    	
    	
    	
    }
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Du hast einen kleinen Denkfehler in deinem Programm:
    du musst bei jedem mal wenn auf den Button geklickt wird Gewicht und Größe aus den Textfeldern holen.

    dieser Teil muss in den ActionListener rein:
    try{
    
    			gewicht = Integer.valueOf(tf1.getText()).intValue();
    			groesse = Float.valueOf(tf2.getText()).floatValue();
    
    		    
    			}catch(Exception e){
    			 System.out.println("Bitte geben Sie nur Zahlen ein.");
    			}


    mfg

    ps: falls du mit dem Applet auf die lokale Festplatte zugreifen oder einen Dialog oder eine weitere Frame öffnen möchtest musst du das Applet signieren.
  4. Autor dieses Themas

    jocko

    Kostenloser Webspace von jocko

    jocko hat kostenlosen Webspace.

    Besten Dank, es hat geklappt. Allerdings erst, als ich Try-catch rausnahm.
    Er hat ein Problem mit dem e von (Exception e). Wahrscheinlich weil (ActionEvent e) auch ein e drin hat.
    Wie kann ich das Problem lösen?

    Ich hätte schon gerne eine Fehlermeldung, wenn jemand keine gültige Zahl eingibt...
  5. du kannst einfach entweder die Exception oder das ActionEvent anders nennen.

    mfg
  6. Autor dieses Themas

    jocko

    Kostenloser Webspace von jocko

    jocko hat kostenlosen Webspace.

    Nun gibt es noch ein problem:

    Der IE zeigt alles richtig an, beim FF kommt eine Fehlermeldung. Einstellungen sollten richtig sein.

    HTML-Code: <applet code="Spiel2.class" width="200" height="200"></applet>


    Was könnte der Fehler sein?
    So wie ich das verstehe ist init das Problem...


    Fehlermeldung
    java.lang.NullPointerException
    	at java.awt.Container.addImpl(Unknown Source)
    	at java.awt.Container.add(Unknown Source)
    	at Spiel2.init(Spiel2.java:16)
    	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    ...
    ...



    Das Problem hat sich erledigt!

    Beitrag zuletzt geändert: 28.5.2010 8:57:01 von jocko
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!