import javax.sound.midi.*; import java.awt.event.*; import java.awt.*; import java.applet.Applet; public class Rada extends Applet implements KeyListener{ ShortMessage lahti = new ShortMessage(); ShortMessage kinni = new ShortMessage(); ShortMessage algus = new ShortMessage(); public Rada(){ init(); } public void init(){ addKeyListener(this); } int x=0; int y=0; int z=0; boolean n=true; public void keyPressed(KeyEvent e){ int kood=e.getKeyCode(); if(kood==KeyEvent.VK_C){ x=62; z=0; } if(kood==KeyEvent.VK_D){ x=64; z=0; } if(kood==KeyEvent.VK_E){ x=66; z=0; } if(kood==KeyEvent.VK_F){ x=67; z=0; } if(kood==KeyEvent.VK_G){ x=69; z=0; } if(kood==KeyEvent.VK_H){ x=71; z=0; } if(kood==KeyEvent.VK_I){ x=73; z=0; } if(kood==KeyEvent.VK_J){ x=74; z=0; } if(kood==KeyEvent.VK_K){ y=51; z=1; } if(kood==KeyEvent.VK_L){ y=53; z=1; } if(kood==KeyEvent.VK_M){ y=54; z=1; } if(kood==KeyEvent.VK_N){ y=56; z=1; } if(kood==KeyEvent.VK_O){ y=58; z=1; } if(kood==KeyEvent.VK_P){ y=59; z=1; } if(kood==KeyEvent.VK_R){ y=61; z=1; } if(kood==KeyEvent.VK_S){ y=63; z=1; } try{ algus.setMessage(ShortMessage.PROGRAM_CHANGE, 0, 16, 0); lahti.setMessage(ShortMessage.NOTE_ON, 0, x, 93); kinni.setMessage(ShortMessage.NOTE_OFF, 0, x, 93); ShortMessage lahti1 = new ShortMessage(); ShortMessage kinni1 = new ShortMessage(); lahti1.setMessage(ShortMessage.NOTE_ON, 0, x+2, 93); kinni1.setMessage(ShortMessage.NOTE_OFF, 0, x+2, 93); ShortMessage lahti2 = new ShortMessage(); ShortMessage kinni2 = new ShortMessage(); lahti2.setMessage(ShortMessage.NOTE_ON, 0, x+4-z, 93); kinni2.setMessage(ShortMessage.NOTE_OFF, 0, x+4-z, 93); ShortMessage lahti3 = new ShortMessage(); ShortMessage kinni3 = new ShortMessage(); lahti3.setMessage(ShortMessage.NOTE_ON, 0, x+5, 93); kinni3.setMessage(ShortMessage.NOTE_OFF, 0, x+5, 93); ShortMessage lahti4 = new ShortMessage(); ShortMessage kinni4 = new ShortMessage(); lahti4.setMessage(ShortMessage.NOTE_ON, 0, x+7, 93); kinni4.setMessage(ShortMessage.NOTE_OFF, 0, x+7, 93); ShortMessage lahti5 = new ShortMessage(); ShortMessage kinni5 = new ShortMessage(); lahti5.setMessage(ShortMessage.NOTE_ON, 0, x+9-z, 93); kinni5.setMessage(ShortMessage.NOTE_OFF, 0, x+9-z, 93); ShortMessage lahti6 = new ShortMessage(); ShortMessage kinni6 = new ShortMessage(); lahti6.setMessage(ShortMessage.NOTE_ON, 0, x+11-z, 93); kinni6.setMessage(ShortMessage.NOTE_OFF, 0, x+11-z, 93); ShortMessage lahti7 = new ShortMessage(); ShortMessage kinni7 = new ShortMessage(); lahti7.setMessage(ShortMessage.NOTE_ON, 0, x+12, 93); kinni7.setMessage(ShortMessage.NOTE_OFF, 0, x+12, 93); Sequence sequence=new Sequence(Sequence.PPQ, 4); Track track=sequence.createTrack(); track.add(new MidiEvent(algus, 0)); track.add(new MidiEvent(lahti1, 8)); track.add(new MidiEvent(kinni1, 11)); track.add(new MidiEvent(lahti2, 12)); track.add(new MidiEvent(kinni2, 15)); track.add(new MidiEvent(lahti3, 16)); track.add(new MidiEvent(kinni3, 21)); track.add(new MidiEvent(lahti4, 22)); track.add(new MidiEvent(kinni4, 27)); track.add(new MidiEvent(lahti5, 28)); track.add(new MidiEvent(kinni5, 33)); track.add(new MidiEvent(lahti6, 34)); track.add(new MidiEvent(kinni6, 39)); track.add(new MidiEvent(lahti7, 40)); track.add(new MidiEvent(kinni7, 45)); Sequencer sequencer=MidiSystem.getSequencer(); sequencer.open(); sequencer.setSequence(sequence); sequencer.start(); }catch(Exception z){} } public void keyReleased(KeyEvent e){} public void keyTyped(KeyEvent e){} public static void main(String argumendid[]){ Frame f=new Frame("Muusika"); f.add(new Rada()); f.setSize(700, 700); f.setBackground(Color.lightGray); f.setVisible(true); } }