salam nak srh tlg tgk kn psl coding nie...
ape yg slh??
//NegeriMalaysia.java: list state of malaysia with their song
//load image files and audio files to applets and applications
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.net.URL;
import java.applet.*;
public class NegeriMalaysia extends JApplet implements ActionListener, ItemListener
{
//Image panel for displaying an image
[b]private ImagePanel imagePanel = new ImagePanel();[/b] // salah kt snie...
//combo box for selecting a state
private JComboBox jcboState = new JComboBox();
//Button to play an audio
private JButton jbtnPlayAudio = new JButton ("Play mp3");
//Selected state
private String State = "Malaysia [Negaraku]";
/** Initialize the applet */
public void init()
{
//panel p to hold a label combo box and a button for play audio
JPanel p = new JPanel();
p.add(new JLabel("Select a State"));
p.add(jcboState);
p.add(jbtnPlayAudio);
//Initialize the combo box
jcboState.addItem("Malaysia [Negaraku]");
jcboState.addItem("Johor");
jcboState.addItem("Melaka");
jcboState.addItem("Negeri Sembilan");
jcboState.addItem("Selangor");
jcboState.addItem("Wilayah Persekutuan");
jcboState.addItem("Perak");
jcboState.addItem("Kedah");
jcboState.addItem("Pulau Pinang");
jcboState.addItem("Perlis");
jcboState.addItem("Pahang");
jcboState.addItem("Terengganu");
jcboState.addItem("Kelantan");
jcboState.addItem("Sabah");
jcboState.addItem("Sarawak");
//By default, the Malaysia flag is displayed
imagePanel.showImage(createImage("malaysia.jpg"));
imagePanel.setPreferredSize(new Dimension (300, 300));
//Place p and an image panel in the applet
getContentPane().add(p, BorderLayout.NORTH);
getContentPane().add(imagePanel, BorderLayout.CENTER);
imagePanel.setBorder(new LineBorder(Color.black, 1));
//Register listener
jbtnPlayAudio.addActionListener(this);
jcboState.addItemListener(this);
}
/**Handle ActionEvent */
public void actionPerformed(ActionEvent e)
{
//Get the file name
String filename = null;
//the .mp3 audio files are stored in the wav folder
if (State.equals("Malaysia [Negaraku]"))
filename = "Negaraku.wav";
else if (State.equals ("Johor"))
filename = "Negeri Johor.wav";
else if (State.equals ("Melaka"))
filename = "Negeri Melaka.wav";
else if (State.equals ("Negeri Sembilan"))
filename = "Negeri Sembilan.wav";
else if (State.equals ("Selangor"))
filename = "Negeri Selangor.wav";
else if (State.equals ("Wilayah Persekutuan"))
filename = "Negeri WilayahPersekutuan.wav";
else if (State.equals ("Perak"))
filename = "Negeri Perak.wav";
else if (State.equals ("Kedah"))
filename = "Negeri Kedah.wav";
else if (State.equals ("Pulau Pinang"))
filename = "Negeri Pulau Pinang.wav";
else if (State.equals ("Perlis"))
filename = "Negeri Perlis.wav";
else if (State.equals ("Pahang"))
filename = "Negeri Pahang.wav";
else if (State.equals ("Terengganu"))
filename = "Negeri Terengganu.wav";
else if (State.equals ("Kelantan"))
filename = "Negeri Kelantan.wav";
else if (State.equals ("Sabah"))
filename = "Negeri Sabah.wav";
else if (State.equals ("Sarawak"))
filename = "Negeri Sarawak.wav";
//Create an audio clip and play it
createAudioClip(filename).play();
}
/** Handle ItemEvent*/
public void itemStateChanged(ItemEvent e)
{
//get selected state
State = (String) jcboState.getSelectedItem();
//get the file name
String filename = null;
//the .jpg files are stored in the image folder
if (State.equals("Malaysia [Negaraku]"))
filename = "malaysia.jpg";
else if (State.equals ("Johor"))
filename = "johor.jpg";
else if (State.equals ("Melaka"))
filename = "melaka.jpg";
else if (State.equals ("Negeri Sembilan"))
filename = "ns.jpg";
else if (State.equals ("Selangor"))
filename = "selangor.jpg";
else if (State.equals ("Wilayah Persekutuan"))
filename = "wilayahpersekutuan.jpg";
else if (State.equals ("Perak"))
filename = "perak.jpg";
else if (State.equals ("Kedah"))
filename = "kedah.jpg";
else if (State.equals ("Pulau Pinang"))
filename = "penang.jpg";
else if (State.equals ("Perlis"))
filename = "perlis.jpg";
else if (State.equals ("Pahang"))
filename = "pahang.jpg";
else if (State.equals ("Terengganu"))
filename = "terengganu.jpg";
else if (State.equals ("Kelantan"))
filename = "kelantan.jpg";
else if (State.equals ("Sabah"))
filename = "sabah.jpg";
else if (State.equals ("Sarawak"))
filename = "sarawak.jpg";
//Load image from the file and show it on the panel
imagePanel.showImage(createImage(filename));
}
/**create an audio from the specified file */
public AudioClip createAudioClip(String filename)
{
//get the URL for the file name
URL url = this.getClass(). getResource("wav/" + filename);
//return the audio clip
return Applet.newAudioClip(url);
}
/**create an image createImage from the specified file */
public Image createImage(String filename)
{
//get the URL for the file name
URL url = this.getClass().getResource("image/" + filename);
//obtain an image icon
ImageIcon imageIcon = new ImageIcon(url);
//return the image
return imageIcon.getImage();
}
/**main method */
public static void main(String args)
{
// create a frame
JFrame frame = new JFrame("State of Malaysia with audio");
//create an instance of the applet
NegeriMalaysia applet = new NegeriMalaysia();
//add the applet instance to the frame
frame.getContentPane().add(applet, BorderLayout.CENTER);
//invoke init() and start()
applet.init();
applet.start();
//display the frame
frame.pack();
frame.setVisible(true);
}
}