Applet em JRE 1.1.4

Olá, pessoal!

Alguém saberia me dizer por que esse applet realiza a soma quando roda em JRE 5.0 e não retorna nada quando roda em JRE 1.1.4??? Obs: Estou compilando com o comando “javac -target 1.1 -source 1.2 NewApplet1.java”

Lá vai o código

/*
 * NewApplet.java
 *
 */

import java.applet.Applet;
import java.awt.*;
import java.awt.event.ActionListener;


public class NewApplet1 extends Applet implements ActionListener {
    public double vf, teq;
    public int pztotal;
    private java.awt.Button button1;
    private java.awt.TextField jPztotal;
    private java.awt.TextField jVf;
    private java.awt.Panel panel1;
    private java.awt.TextField result;
    
 
    /** Initializes the applet NewApplet */
    
	public void init() {
          initComponents();
    }
    
    
    private void initComponents() {
        panel1 = new java.awt.Panel();
        jVf = new java.awt.TextField();
        jPztotal = new java.awt.TextField();
        button1 = new java.awt.Button();
        result = new java.awt.TextField();

        setLayout(null);

        panel1.setLayout(null);

        panel1.setBackground(new java.awt.Color(255, 255, 255));
        

        panel1.add(jVf);
        jVf.setBounds(160, 70, 90, 20);

        panel1.add(jPztotal);
        jPztotal.setBounds(160, 100, 90, 20);

        button1.setLabel("Soma");
        button1.addActionListener(this);

        panel1.add(button1);
        button1.setBounds(180, 160, 57, 24);

        panel1.add(result);
        result.setBounds(160, 130, 90, 20);

        add(panel1);
        panel1.setBounds(0, 0, 440, 300);

    }
        
    public void actionPerformed(java.awt.event.ActionEvent evt) {
        vf = Double.parseDouble(jVf.getText());
        pztotal = Integer.parseInt(jPztotal.getText());
        teq = vf+pztotal;
        result.setText(Double.toString(teq));
  
    }   
}

Usei o compilador da Microsoft (que só entende Java 1.1.8) e ele me disse:

Ou seja, em vez de parseDouble, você vai ter de usar outra coisa para efetuar sua conversão.

[quote=thingol]Usei o compilador da Microsoft (que só entende Java 1.1.8) e ele me disse:

Ou seja, em vez de parseDouble, você vai ter de usar outra coisa para efetuar sua conversão.
[/quote]

Ó ow… alguma sugestão?

         vf = new Double (jVf.getText()).doubleValue();

Confesso que é bem feio isso; deve haver uma forma mais decente de se fazer isso.

[quote=thingol] vf = new Double (jVf.getText()).doubleValue();

Confesso que é bem feio isso; deve haver uma forma mais decente de se fazer isso.
[/quote]

Thingol

Se é feio, eu não sei… mas que deu certo, isso deu!

Valeu mesmo, mais uma vez! (já não é a primeira vez que vc me ajuda!)

EhRuimHein

Dica: se você TEM de rodar applets em JRE 1.1.8 (JVM da Microsoft), arranje o jvc.exe da Microsoft.
(Existe flutuando na Internet um “Microsoft SDK for Java 4.0” que não está disponível no site da Microsoft.)
Esse compilador é um lixo, mas pelo menos pega esses problemas estúpidos do tipo “parseDouble só apareceu na versão 1.2 do JDK”.
Obs. O arquivo é grande demais para eu lhe mandar via email ou deixá-lo disponível, e de qualquer maneira acho que deve ser fácil achá-lo, já que ele foi disponibilizado de graça pela Microsoft.

:smiley: Valeu!

Só pra constar, achei o arquivo no link http://sourceforge.net/project/showfiles.php?group_id=53708&package_id=80045&release_id=152855

Caso alguém também esteja precisando…

Aproveitando o mesmo tópico:

Nessa applet, existirão 3 textField, onde eu gostaria de fazer algo similar ao que é a jFormattedTextField do swing, ou seja, após o usuário digitar todo o número, e passar para a próxima textField, o número digitado deve ser formatado a partir de um numberFormat. Isso é para evitar aquelas confusões com vírgula e ponto, e para o usuário ter certeza do número de casas decimais que serão usados no cálculo.
Estou pensando em tentar fazer isso com FocusListener, e depois transformar a string já formatada em Double, ou Integer, por algum meio (qual???). Será que isso vai rodar no microsof VM? Alguém tentaria de maneira diferente?