import java.applet.Applet; import java.applet.*; // Applettiluokat import java.awt.*; // Painikkeet, tekstikentät ym. import java.awt.event.*; // Tapahtumien käsittely class Ala { int x,y,z; public void setAla(String x, String y){ this.x = Integer.valueOf(x); this.y = Integer.valueOf(y); z = this.x * this.y; } public String getAla(){ return String.valueOf(z); } } class Suorakulmio { private int x,y; void piirra(String x, String y, Graphics g) { this.x=Integer.valueOf(x); this.y=Integer.valueOf(y); g.drawRect(200,50,this.x,this.y); } } public class Kayttoliittyma extends Applet implements ActionListener { TextField tx, ty; // Määritellään oliot ja muuttujat Label tz; Button laske; Ala ala = new Ala(); Suorakulmio ruutu = new Suorakulmio(); public void init () { // Appletin alustus add(tx = new TextField()); // Olioiden luonti add(ty = new TextField()); add(tz = new Label("")); add(laske = new Button("Ala")); laske.addActionListener(this); // Kuuntelija painikkeelle laske } public void paint(Graphics g) { // Piirtoalusta tx.reshape(40, 20, 80, 20); // Olioiden paikka ja koko ty.reshape(40, 40, 80, 20); tz.reshape(40, 60, 80, 20); laske.reshape(40, 80, 60, 20); ruutu.piirra(tx.getText(),ty.getText(),g); } public void actionPerformed(ActionEvent e) { // Tapahtumankäsittelijä if (e.getActionCommand().equals("Ala")){ // Jos painiketta laske painettu: ala.setAla(tx.getText(),ty.getText()); tz.setText(ala.getAla()); // Summan muunnos ja sijoitus nimiöön tz repaint(); // Piirtoalustan päivitys } } }