Dúvida jframe + componentes Swing

Olá pessoal.

Sou iniciante em OO e Java, mas como bom curioso, decidi tentar criar uma GUI para um programinha muito simples cuja idéia é converter um determinado valor de nós para quilômetros por hora.

Minha dificuldade esta em implementar o método para exibir o resultado da operação de conversão, convertendo um valor do tipo double para String a ser exibido em um campo jText.

Peço que vejam o código abaixo e me indiquem uma direção. São as linhas 110 , 115 e a 119 não tenho ideia de como prosseguir:

https://pastebin.com/Nmi4rJXw

Obrigado.

Para converter um Double para String e jogar o resultado no JTextField você pode fazer:

JTextFieldResutado.setText(Double.toString(valorDoubleASerConvertido));

Valeu Jonathan_Medeiros. O form rodou. O estranho é que não sai resultado quando realizo a operação através do botão jButton1ActionPerformed:

kmh = valor * knot;

A operação é bem simples. Creio que ainda seja algo no form

declarei todas as variaveis como globais dentro da classe:

int valor;
double knot = 1.852;
double kmh;

up

O valor não é exibido por que você só está realizando o cálculo, e não está jogando o resultado pra nenhum campo!

Você precisaria fazer o que te falei no post anterior, ou seja, dentro do evento click do botão que faz o cálculo você jogar o resultado para o campo texto:

Exemplo:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        kmh = valor * knot;
        jTextField2.setText(Double.toString(kmh));
}

Desculpe a demora.

Obrigado pela dica. Coloquei o cálculo dentro do botão de evento. Ainda assim , ele exibe somente o valor 0.0 no campo de saída

up

Logicamente pensando, se o valor exibido é 0.0, e o cálculo é uma multiplicação, logo você está multiplicando o valor da variável knot por zero.

Verifique se está atribuindo corretamente o valor inserido no campo jTextField1 para a variável valor.

int valor = 0;
double knot = 1.852;
double kmh = 0;

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        valor = Double.parseDouble(jTextField1.getText());//Veja se este valor é recuperado conforme o esperado
        kmh = valor * knot;
        jTextField2.setText(Double.toString(kmh));
}

Funcionou, Jonathan. Por noobice minha não me dei conta de duas coisas:

Primeira e mais simples: toda a implementação poderia ter sido feita dentro do botão;
Segunda: Desconhecia conversão com esse argumento Double.parseDouble(jTextField1.getText());

Muito obrigado. Agora Vou criar outros campos e um botão para converter de pés (ft) para metros :wink:

Grande abraço.