No início do programa é para aparecer uma Janela JOptionPane.showInputDialog perguntando seu peso com um ícone personalizado, em seguida é para aparecer outra janela JOptionPane.showInputDialog perguntando sua altura com outro ícone personalizado. As duas janelas contém um comando que altera a fonte do texto. Mas os ícones não estão sendo exibidos, segue o programa:
// Calculadora de IMC
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import java.awt.Font;
import javax.swing.*;
import javax.swing.plaf.FontUIResource;
public class IMC2
{
public static void main(String[] args)
{
UIManager.put("OptionPane.messageFont", new FontUIResource(new Font("Arial", Font.BOLD, 24)));
ImageIcon icone1 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\Altura.jpg");
String peso1 = JOptionPane.showInputDialog(null, "Digite o seu peso: ", "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, null, "");
double peso = Double.parseDouble(peso1);
ImageIcon icone2 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\Peso.jpg");
String altura1 = JOptionPane.showInputDialog(null, "Digite a sua altura: ", "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, null, "");
double altura = Double.parseDouble(altura1);
double a = peso / (altura * altura);
UIManager.put("OptionPane.messageFont", new FontUIResource(new Font("Arial", Font.PLAIN, 24)));
if (a <= 18.5)
{
String imc = String.format("Seu IMC é: %.1f (Abaixo do peso)%n%n%n%s%n%s%n%s%n%s%n%s", a, "TABELA IMC (Indice de Massa Corpórea)", "Abaixo do peso: ≤ 18,5", "Normal: 18,5 a 24,9", "Sobrepeso: 25 a 29,9", "Obeso: ≥ 30");
ImageIcon icone3 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\AbaixodoPeso.jpg");
JOptionPane.showMessageDialog(null, imc, "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, icone3);
}
if (a > 18.5)
{
if (a <= 24.9)
{
String imc = String.format("Seu IMC é: %.1f (Normal)%n%n%n%s%n%s%n%s%n%s%n%s", a, "TABELA IMC (Indice de Massa Corpórea)", "Abaixo do peso: ≤ 18,5", "Normal: 18,5 a 24,9", "Sobrepeso: 25 a 29,9", "Obeso: ≥ 30");
ImageIcon icone4 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\Normal.jpg");
JOptionPane.showMessageDialog(null, imc, "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, icone4);
}
}
if (a >= 25)
{
if (a <= 29.9)
{
String imc = String.format("Seu IMC é: %.1f (Sobrepeso)%n%n%n%s%n%s%n%s%n%s%n%s", a, "TABELA IMC (Indice de Massa Corpórea)", "Abaixo do peso: ≤ 18,5", "Normal: 18,5 a 24,9", "Sobrepeso: 25 a 29,9", "Obeso: ≥ 30");
ImageIcon icone5 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\Sobrepeso.jpg");
JOptionPane.showMessageDialog(null, imc, "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, icone5);
}
}
if (a >= 30)
{
String imc = String.format("Seu IMC é: %.1f (Obeso)%n%n%n%s%n%s%n%s%n%s%n%s", a, "TABELA IMC (Indice de Massa Corpórea)", "Abaixo do peso: ≤ 18,5", "Normal: 18,5 a 24,9", "Sobrepeso: 25 a 29,9", "Obeso: ≥ 30");
ImageIcon icone6 = new ImageIcon("D:\\Cursos diversos\\Programação\\Programas\\Ícone\\Obeso.jpg");
JOptionPane.showMessageDialog(null, imc, "Calculadora de IMC", JOptionPane.PLAIN_MESSAGE, icone6);
}
}
}
O erro: