[JAVA] TetField

di il
9 risposte

[JAVA] TetField

Salve a tutti,
utilizzo J2ME da poco tempo e non so come risolvere un grosso problema. Ho creato un textfield in cui l'utente deve inserire un valore numerico che servirà per effettuare delle operazioni matematiche. Il problema è che non so come prelevare il valore numerico dalla textfield, perchè riesco a prenderlo solo come stringa!
Come posso fare?

9 Risposte

  • Re: [JAVA] TetField

    Prova cosi
    
    try
      {
      Integer.parseInt(textField.getText());
      }
     catch(Exception e) {}
    ciao gino
  • Re: [JAVA] TetField

    Grazie mille Gino!
    Una precisazione: in che variabile salva il valore? Non sono molto esperto...
    Grazie, ciao!
  • Re: [JAVA] TetField

    Hai ragione me ne sono dimenticato

    ecco come fare

    Int n;
    try 
      { 
      n = ger.parseInt(textField.getText()); 
      } 
     catch(Exception e) {}
    ciao
  • Re: [JAVA] TetField

    Ok, grazie
    allora, ho corretti tutti gli errori del codice a parte questi due:
    
    D:\\Programmi\\WTK22\\apps\\Altimeter\\src\\main.java:42: cannot resolve symbol
    symbol  : method getText ()
    location: class javax.microedition.lcdui.TextField
     		 n = get.parseInt(bar.getText()); 
                                         ^
    D:\\Programmi\\WTK22\\apps\\Altimeter\\src\\main.java:42: cannot resolve symbol
    symbol  : variable get 
    location: class main
     		 n = get.parseInt(bar.getText()); 
                         ^
    2 errors
    com.sun.kvem.ktools.ExecutionException
    Build failed
    
    Ti posto il codice completo, non riesco a capire come mai da errore..
    
    import javax.microedition.midlet.*;
    import javax.microedition.lcdui.*;
    public class main extends MIDlet implements CommandListener
    {
    	int n;
    	private Display display;
    	private Form fmMain;
    	private Command cmOk;
    	private Command cmExit;
    	private TextField bar;
    	private StringItem test;
    	public main ()
    {
    		display=Display.getDisplay(this);
    		cmOk = new Command (\"Ok\", Command.OK,2);
    		cmExit = new Command (\"Esci\",Command.EXIT,1);
    		bar = new TextField (\"Pressione:\",\"1013\",4,TextField.NUMERIC);
    		test= new StringItem (\"Altitudine:\",\"Altitudine:\");
    		fmMain = new Form(\"Altimetro\");
    		fmMain.addCommand(cmOk);
    		fmMain.addCommand(cmExit);
    		fmMain.append(bar);
    		fmMain.setCommandListener(this);
    
    }
    public void startApp()
    {
    	display.setCurrent (fmMain);
    }
    public void pauseApp()
    {
    }
    public void destroyApp(boolean unconditional)
    {
    }
    public void commandAction(Command c, Displayable s)
    {
    	if (c==cmOk)
    	{
    	try 
      		{ 
     		 n = get.parseInt(bar.getText()); 
     		 } 
     	catch(Exception e) {}
    	test.setText(\"L'altitudine è di: \" + ((1013-n)/9) + \" \" );
    				
    	}
    }
    }
    
    Grazie mille per la tua disponibilità!
    Ciao!
  • Re: [JAVA] TetField

    Ooppsss... non avevo fatto caso che parlavi di j2me... ora non ho la documentazione sotto mano ma l'errore dice che non trova il metodo getText() nella classe TextField. inoltre get non la trova nel main li dovrebbe andarci Integer.

    ciao gino
  • Re: [JAVA] TetField

    Ho capito, quindi devo dichiarare get come integer??
    Per quanto riguarda il metodo getText..esistera un'equivalente in j2me?
    Ciao
  • Re: [JAVA] TetField

    Sicuramente ci sarà un equivalente oppure vuole qualche parametro. basta che guardi la documentazione. Non serve che dichiari get come integer perche il metodo parseInt è un metodo static quindi puoi dirrettamente invocarlo cosi


    Integer.parseInt(int val);

    ciao
  • Re: [JAVA] TetField

    Ok, grazie. Cercherò un po' la documentazione di j2me e ci darò un'occhiata.
    Grazie
  • Re: [JAVA] TetField

    Ce l'ho fatta!
    Il codice esatto è:

    try
    {
    n = Integer.parseInt(test.getString());
    }

    Grazie a tutti!
Devi accedere o registrarti per scrivere nel forum
9 risposte