rendered paste bodypackage sisaluokallinen;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Asteet
{
public static void main(String[] args)
{
NappiKehys kehys = new NappiKehys();
kehys.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
kehys.setVisible(true);
}
}
/**
Nappipaneelin sisältävä kehys
*/
class NappiKehys extends JFrame
{
public NappiKehys()
{
setTitle("Muunnoskone");
setSize(OLETUS_LEVEYS, OLETUS_KORKEUS);
// lisätään paneeli kehykseen
getContentPane().setLayout(new GridLayout(2,1));
Container contentPane = getContentPane();
setLocationRelativeTo(null);
FC fc = new FC();
contentPane.add(fc);
CF cf = new CF();
contentPane.add(cf);
}
public static final int OLETUS_LEVEYS = 300;
public static final int OLETUS_KORKEUS = 200;
}
//Fahren -> Celc
class FC extends JPanel
{
public FC()
{
teeNappi("F -> C", "Asteet (kokonaisluku, Fahrenheit)");
}
void teeNappi(String napinNimi, String labelTeksti)
{
JLabel jl = new JLabel(labelTeksti);
add(jl);
JTextField tf1 = new JTextField("",10);
add(tf1);
JButton uusiNappi = new JButton(napinNimi);
add(uusiNappi);
uusiNappi.addActionListener(new // LUODAAN NIMETÖN LUOKKA
ActionListener()
{
public void actionPerformed(ActionEvent tap)
{
}
});
}
}
//Celc ---> Fahren
class CF extends JPanel
{
public CF()
{
teeNappi("C -> F", "Asteet (kokonaisluku, Celcius)");
}
/**
Painonapin konstruoiva ja napin paneeliin lisäävä metodi.
*/
void teeNappi(String napinNimi, String labelTeksti)
{
JLabel jl = new JLabel(labelTeksti);
add(jl);
final JTextField tf2 = new JTextField("",10);
add(tf2);
JButton uusiNappi = new JButton(napinNimi);
add(uusiNappi);
uusiNappi.addActionListener(new // LUODAAN NIMETÖN LUOKKA
ActionListener()
{
public void actionPerformed(ActionEvent tap)
{
}
});
}
}