import java.applet.Applet; import java.awt.*; import java.awt.event.*; import javax.sound.sampled.*; import java.io.*; public class DigiHeli extends Panel implements ActionListener { Label l1=new Label("Sisendfail: "); Label l2=new Label("Väljundfail:"); Button b1=new Button("Joonista"); Button b2=new Button("Salvesta"); TextField tf1=new TextField(); TextField tf2=new TextField(); static TextArea ta1=new TextArea(20,20); public DigiHeli() { setLayout(new BorderLayout()); Panel pNupud=new Panel(new GridLayout(1,3)); pNupud.add(b1); b1.addActionListener(this); pNupud.add(b2); b2.addActionListener(this); Panel pV2ljad=new Panel(new GridLayout(2,2)); pV2ljad.add(l1); pV2ljad.add(tf1); pV2ljad.add(l2); pV2ljad.add(tf2); Panel pPaneelid=new Panel(new BorderLayout()); pPaneelid.add(pV2ljad, BorderLayout.NORTH); pPaneelid.add(ta1); pPaneelid.add(pNupud, BorderLayout.SOUTH); add(pPaneelid); } public static void main(String arg[]) { ta1.append("Loon frame'i \"DigiHeli\"\n"); Frame f=new Frame("DigiHeli"); f.add(new DigiHeli()); f.setSize(320,240); f.setVisible(true); f.addWindowListener(new Raamikuular()); } public void actionPerformed(ActionEvent e) { if(e.getActionCommand().compareTo("Joonista")==0) { joonistaja.joonista(tf1.getText()); } if(e.getActionCommand().compareTo("Salvesta")==0) { joonistaja.salvesta(tf2.getText()); } } } class Raamikuular extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } class joonistaja extends Applet implements MouseListener { static pala avatudPala=new pala(); public joonistaja() { addMouseListener(this); } public static void joonista(String fail) { DigiHeli.ta1.append("Loon frame'i \"graafik\"\n"); Frame f=new Frame("Graafik"); f.add(new joonistaja()); f.setSize(800,200); f.setVisible(true); f.addWindowListener(new Raamikuular()); avatudPala=ava(fail); } public static void salvesta(String fail) { byte[] vanadandmed=avatudPala.andmed.toByteArray(); byte[] andmed= new byte[(int)(avatudPala.valikuLopp*avatudPala.pikkus-avatudPala.valikuAlgus*avatudPala.pikkus)]; int count=0; for(int i=(int)(avatudPala.valikuAlgus*avatudPala.pikkus); i<(int)(avatudPala.valikuLopp*avatudPala.pikkus) && i