Convertisseur celcius en kelvin

Contenu du snippet

Ce programme permet de convertir des degrés Celcius en Kelvin. Si on regarde bien ce programme n'a pas un grand intérêt car en effet pour passer °C en °K il suffit de rajouter 273 pour avoir le résultat en Kelvin. En fait, l'intérêt c'est juste de montrer comment manipuler les Jpanel, JTextField et Jlabel.

Source / Exemple :


/* Convertisseur.java est une application simple qui permet de convertir des degré Celcius en
degré Kelvin */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Convertisseur implements ActionListener {
    JFrame convertFrame;
    JPanel convertPanel;
    JTextField tempCelsius;
    JLabel celsiusLabel, KelvinLabel;
    JButton convertTemp;

    public Convertisseur() {
        //Creation de la fenêtre.
        convertFrame = new JFrame("Convertir Celsius en Kelvin");
        convertFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        convertFrame.setSize(new Dimension(250, 100));

        //Creation du panel.
        convertPanel = new JPanel(new GridLayout(2, 2));

        addWidgets();

        //Mise en place du bouton par defaut.
        convertFrame.getRootPane().setDefaultButton(convertTemp);

        //Ajout du panel à la fenêtre.
        convertFrame.getContentPane().add(convertPanel, BorderLayout.CENTER);

        //Affichage de la fenêtre.
        convertFrame.pack();
        convertFrame.setVisible(true);
    }
    /* Creation et ajout des artifices */

    private void addWidgets() {
        //Creation widgets.
        tempCelsius = new JTextField(2);
        celsiusLabel = new JLabel("Celsius", SwingConstants.LEFT);
        convertTemp = new JButton("Convertir");
        KelvinLabel = new JLabel("KELVIN (°K)", SwingConstants.LEFT);

        convertTemp.addActionListener(this);

        convertPanel.add(tempCelsius);
        convertPanel.add(celsiusLabel);
        convertPanel.add(convertTemp);
        convertPanel.add(KelvinLabel);

        celsiusLabel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
        KelvinLabel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
    }

    public void actionPerformed(ActionEvent event) {
        //On passe les Celsius comme un double et on converti en Kelvin.
        int tempFahr = (int)((Double.parseDouble(tempCelsius.getText()))
                             + 273);
        KelvinLabel.setText(tempFahr + " °K");
    }

    /*Creation du GUI et on l'affiche */
    private static void createAndShowGUI() {
        //Sert juste pour avoir une belle décoration de fenêtre.
        JFrame.setDefaultLookAndFeelDecorated(true);

        Convertisseur convert = new Convertisseur();
    }

    public static void main(String[] args) {
        
        //On crée et on affiche l'application GUI.
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.