الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال حول JTabbedPane

مغلق
بدأه شاب مسلم في 28 نوفمبر 2004 · 31 رد · 1,790 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#26

انا حليت جزء من المشكلة

وهي حينما يبدا البرنامج يبدا مباشرة بالصورة الارشادية y.jpg

وتبقت المشكلة الاخيرة وهي نريد ان تظهر نفس الصورة اثناء التنقل بين JTabbedPane

import java.net.URL;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Assignment2 extends JFrame  implements ActionListener , ItemListener

{
  private AudioClip currentClip;
   private String song = " ";
private javax.swing.JTabbedPane tabbedPane;
private JPanel panel1;
private JPanel panel2;
private JPanel panel3;
private ImagePanel imagePanel1 = new ImagePanel();
private ImagePanel imagePanel2 = new ImagePanel();
private ImagePanel imagePanel3 = new ImagePanel();


public Assignment2()
{
 setTitle( "Assignment 2" );

 // Create the tab pages
 createPage1();
 createPage2();
 createPage3();

 // Create a tabbed pane
 tabbedPane = new javax.swing.JTabbedPane();
 tabbedPane.addTab( "ARABIC SONG", panel1 );
 tabbedPane.addTab( "CLASSIC SONG", panel2 );
 tabbedPane.addTab( "Anasheed", panel3 );
 getContentPane().add( tabbedPane );



 setSize( 400, 300 );

 this.addWindowListener(new WindowAdapter()
 {
       public void windowClosing(WindowListener w)
       {
         System.exit(0);
       }
    });
}

public void createPage1()
{
 JComboBox a = new JComboBox();
 panel1 = new JPanel();
 panel1.setLayout( new BorderLayout() );
 a.addItem("Select one from combo box  ARABIC SONG" );
 a.addItem("Kahter");
 a.addItem("Alsafy");
 a.addItem("Ali");
 panel1.add(a,BorderLayout.NORTH);
 panel1.add(imagePanel1,BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);
    String filename2 = "y.jpg";
   imagePanel1.showImage(createImage(filename2));

}

public void createPage2()
{
 JComboBox a = new JComboBox();
 panel2 = new JPanel();
 panel2.setLayout( new BorderLayout() );
 a.addItem("Select one from combo box  CLASSIC SONG" );
 a.addItem("Ehab");
 a.addItem("Ahmed");
 a.addItem("Hassan");
 panel2.add(a,BorderLayout.NORTH);
 panel2.add(imagePanel2,BorderLayout.CENTER);
 a.addItemListener(this);
    a.addActionListener(this);

}

public void createPage3()
{
 JComboBox a = new JComboBox();
 panel3 = new JPanel();
 panel3.setLayout( new BorderLayout() );
 a.addItem("Select one from combo box  Anasheed" );
 a.addItem("h");
 a.addItem("a");
 a.addItem("k");
 panel3.add(a,BorderLayout.NORTH);
 panel3.add(imagePanel3,BorderLayout.CENTER);
 a.addItemListener(this);
    a.addActionListener(this);


}


public void actionPerformed(ActionEvent e)
 {
if(currentClip!=null)
      currentClip.stop();

    // Get the file name
    String filename = null;
    if (song.equals("Kahter"))
      filename = "kahter.wav";
    else if (song.equals("Alsafy"))
      filename = "alsafy.wav";
       else if (song.equals("Ali"))
        filename = "ali.wav";

       else if (song.equals("Ehab"))
        filename = "ehab.wav";
       else if (song.equals("Ahmed"))
        filename = "ahmed.wav";
       else if (song.equals("Hassan"))
        filename = "hassan.wav";
       else if (song.equals("h"))
        filename = "h.wav";
       else if (song.equals("a"))
        filename = "a.wav";
       else if (song.equals("k"))
        filename = "khalid.wav";

       else if (song.equals("Select one from combo box  ARABIC SONG"))
        filename = "";

        else if (song.equals("Select one from combo box  CLASSIC SONG"))
        filename = "";

        else if (song.equals("Select one from combo box  Anasheed"))
        filename = "";
  createAudioClip(filename).play();
 }


 // Handle ItemEvent
 public void itemStateChanged(ItemEvent e)
 {
 if(currentClip!=null)
       currentClip.stop();

   if(e.getSource() instanceof JComboBox)
   {
 JComboBox combo = (JComboBox)e.getSource();
 song = (String)combo.getSelectedItem();
     String filename = null;

        if (song.equals("Kahter"))
           filename = "kahter.jpg";
        else if (song.equals("Alsafy"))
           filename = "alsafy.jpg";
     else if (song.equals("Ali"))
           filename = "ali.jpg";


        else if (song.equals("Ehab"))
            filename = "ehab.jpg";
     else if (song.equals("Ahmed"))
            filename = "ahmed.jpg";
     else if (song.equals("Hassan"))
                filename = "hassan.jpg";

        else if (song.equals("h"))
       filename = "h.jpg";
  else if (song.equals("a"))
    filename = "a.jpg";
  else if (song.equals("k"))
        filename = "khalid.jpg";

        else if (song.equals("Select one from combo box  ARABIC SONG"))
         {
           currentClip.stop();
           filename = "y.jpg";
     }

   else if (song.equals("Select one from combo box  CLASSIC SONG"))
         {
           currentClip.stop();
           filename = "y.jpg";
     }

 else if (song.equals("Select one from combo box  Anasheed"))
         {
           currentClip.stop();
           filename = "y.jpg";
     }

        imagePanel1.showImage(createImage(filename));
        imagePanel2.showImage(createImage(filename));
        imagePanel3.showImage(createImage(filename));
}
 }


public AudioClip createAudioClip(String filename)
 {
   // Get the URL for the file name
   URL url = this.getClass().getResource("song/" + filename);
   currentClip = Applet.newAudioClip(url);
   // Return the audio clip
   return currentClip;
 }

 // Create an image from the specified file
 public Image createImage(String filename)
 {
   // Get the URL for the file name
   URL url = this.getClass().getResource("images/" + filename);
   // Obtain a Toolkit instance
   Toolkit toolkit = Toolkit.getDefaultToolkit();
   // Return the image
   return toolkit.getImage(url);
 }

   // Main method to get things started
public static void main( String args[] )
{
 // Create an instance of the test application
 Assignment2 mainFrame = new Assignment2();
 mainFrame.setVisible( true );
}
}
#27
san3aniJava كتب:
لا ادري ما الصعوبة في الامر

لي عودة

انتظر عودتك

#28

السلاام عليكم

يا اخي يا شاب مسلم

لا ادري ما الصعوبة في هدا الامر تفضل

شوف هدا الكود

لكن ارجوك مرة ثانية حط ملفات الصور والصوت

import java.net.URL;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Assignment2 extends JFrame  implements ActionListener , ItemListener

{
  private AudioClip currentClip;
  private String song = " ";
  private javax.swing.JTabbedPane tabbedPane;
  private JPanel panel1;
  private JPanel panel2;
  private JPanel panel3;
  JComboBox a = new JComboBox();
  JComboBox b = new JComboBox();
   JComboBox c = new JComboBox();

  private ImagePanel imagePanel1 = new ImagePanel(a);
  private ImagePanel imagePanel2 = new ImagePanel(b);
  private ImagePanel imagePanel3 = new ImagePanel(c);


  public Assignment2() {
    setTitle("Assignment 2");

// Create the tab pages
    createPage1();
    createPage2();
    createPage3();

// Create a tabbed pane
    tabbedPane = new javax.swing.JTabbedPane();
    tabbedPane.addTab("ARABIC SONG", panel1);
    tabbedPane.addTab("CLASSIC SONG", panel2);
    tabbedPane.addTab("Anasheed", panel3);
    getContentPane().add(tabbedPane);

    setSize(400, 300);

    this.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowListener w) {
        System.exit(0);
      }
    });
  }

  public void createPage1() {

    panel1 = new JPanel();
    panel1.setLayout(new BorderLayout());
    a.addItem("Select one from combo box  ARABIC SONG");
    a.addItem("Kahter");
    a.addItem("Alsafy");
    a.addItem("Ali");
    panel1.add(a, BorderLayout.NORTH);
    panel1.add(imagePanel1, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);
    String filename2 = "y.jpg";
    imagePanel1.showImage(createImage(filename2));

  }

  public void createPage2() {

    panel2 = new JPanel();
    panel2.setLayout(new BorderLayout());
    b.addItem("Select one from combo box  CLASSIC SONG");
    b.addItem("Ehab");
    b.addItem("Ahmed");
    b.addItem("Hassan");
    panel2.add(b, BorderLayout.NORTH);
    panel2.add(imagePanel2, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);

  }

  public void createPage3() {
    panel3 = new JPanel();
    panel3.setLayout(new BorderLayout());
    c.addItem("Select one from combo box  Anasheed");
    c.addItem("h");
    c.addItem("a");
    c.addItem("k");
    panel3.add(c, BorderLayout.NORTH);
    panel3.add(imagePanel3, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);

  }

  public void actionPerformed(ActionEvent e) {
    if (currentClip != null)
      currentClip.stop();

    // Get the file name
    String filename = null;
    if (song.equals("Kahter"))
      filename = "kahter.wav";
    else if (song.equals("Alsafy"))
      filename = "alsafy.wav";
    else if (song.equals("Ali"))
      filename = "ali.wav";

    else if (song.equals("Ehab"))
      filename = "ehab.wav";
    else if (song.equals("Ahmed"))
      filename = "ahmed.wav";
    else if (song.equals("Hassan"))
      filename = "hassan.wav";
    else if (song.equals("h"))
      filename = "h.wav";
    else if (song.equals("a"))
      filename = "a.wav";
    else if (song.equals("k"))
      filename = "khalid.wav";

    else if (song.equals("Select one from combo box  ARABIC SONG"))
      filename = "";

    else if (song.equals("Select one from combo box  CLASSIC SONG"))
      filename = "";

    else if (song.equals("Select one from combo box  Anasheed"))
      filename = "";
//    createAudioClip(filename).play();
  }

// Handle ItemEvent
  public void itemStateChanged(ItemEvent e) {
    if (currentClip != null)
      currentClip.stop();

    if (e.getSource() instanceof JComboBox) {
      JComboBox combo = (JComboBox) e.getSource();
      song = (String) combo.getSelectedItem();
      String filename = null;

      if (song.equals("Kahter"))
        filename = "kahter.jpg";
      else if (song.equals("Alsafy"))
        filename = "alsafy.jpg";
      else if (song.equals("Ali"))
        filename = "ali.jpg";

      else if (song.equals("Ehab"))
        filename = "ehab.jpg";
      else if (song.equals("Ahmed"))
        filename = "ahmed.jpg";
      else if (song.equals("Hassan"))
        filename = "hassan.jpg";

      else if (song.equals("h"))
        filename = "h.jpg";
      else if (song.equals("a"))
        filename = "a.jpg";
      else if (song.equals("k"))
        filename = "khalid.jpg";

      else if (song.equals("Select one from combo box  ARABIC SONG")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      else if (song.equals("Select one from combo box  CLASSIC SONG")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      else if (song.equals("Select one from combo box  Anasheed")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      imagePanel1.showImage(createImage(filename));
      imagePanel2.showImage(createImage(filename));
      imagePanel3.showImage(createImage(filename));
    }
  }

  public AudioClip createAudioClip(String filename) {
    // Get the URL for the file name
  //  URL url = this.getClass().getResource("song/" + filename);
//    currentClip = Applet.newAudioClip(url);
    // Return the audio clip
    return currentClip;
  }

// Create an image from the specified file
  public Image createImage(String filename) {
    // Get the URL for the file name
    URL url = this.getClass().getResource("images/" + filename);
    // Obtain a Toolkit instance
    Toolkit toolkit = Toolkit.getDefaultToolkit();
    // Return the image
    return toolkit.getImage(url);
  }

  // Main method to get things started
  public static void main(String args[]) {
// Create an instance of the test application
    Assignment2 mainFrame = new Assignment2();
    mainFrame.setVisible(true);
  }
}





 class ImagePanel extends JPanel {

 Image image;
 JComboBox a;
 public ImagePanel(JComboBox aa) {
  a=aa;
 }

 public void showImage(Image image) {

   this.image = image;
   repaint();
 }

 public void paintComponent(Graphics g) {
   super.paintComponent(g);
   if(((String)a.getSelectedItem()).startsWith("Select"))
   {

     URL url = this.getClass().getResource("images/y.jpg" );
     Toolkit toolkit = Toolkit.getDefaultToolkit();
       
     image = toolkit.getImage(url);
   }
   else
   {

     URL url = this.getClass().getResource("images/"+a.getSelectedItem()+".jpg" );
     Toolkit toolkit = Toolkit.getDefaultToolkit();

     image = toolkit.getImage(url);

   }
   if(image!=null)
     g.drawImage(image,0,0,this.getWidth(),this.getHeight(),this);
 }

}

تم تعديل هذه المشاركة بواسطة san3aniJava في 30 نوفمبر 2004 في 09:32

لا بد من صنعاء وان طال السفر

#29

بالفعل وفقط باضافة السطرين التاليين وهذا البرنامج كامل حسب ما فهمت من الاخ شاب مسلم قم فقط بتغيير اسم الصورة للتوضيح للاخ شاب مسلم لقد قام الاخ san3aniJava باضافة السطر التالي للبرنامج حتى تظهر الصورة الارشادية الى panel1 وانا قمت باضافة الصورة الارشادية الى panel2,panel3 واعتقد ان البرنامج هكذا كامل وبالفعل لم انتبه لما قام به الاخ san3aniJava .

 String filename2 = "y.jpg";
  imagePanel1.showImage(createImage(filename2));

والبرنامج كامل

import java.net.URL;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Assignment2 extends JFrame  implements ActionListener , ItemListener

{
 private AudioClip currentClip;
  private String song = " ";
private javax.swing.JTabbedPane tabbedPane;
private JPanel panel1;
private JPanel panel2;
private JPanel panel3;
private ImagePanel imagePanel1 = new ImagePanel();
private ImagePanel imagePanel2 = new ImagePanel();
private ImagePanel imagePanel3 = new ImagePanel();


public Assignment2()
{
setTitle( "Assignment 2" );

// Create the tab pages
createPage1();
createPage2();
createPage3();

// Create a tabbed pane
tabbedPane = new javax.swing.JTabbedPane();
tabbedPane.addTab( "ARABIC SONG", panel1 );
tabbedPane.addTab( "CLASSIC SONG", panel2 );
tabbedPane.addTab( "Anasheed", panel3 );
getContentPane().add( tabbedPane );



setSize( 400, 300 );

this.addWindowListener(new WindowAdapter()
{
      public void windowClosing(WindowListener w)
      {
        System.exit(0);
      }
   });
}

public void createPage1()
{
JComboBox a = new JComboBox();
panel1 = new JPanel();
panel1.setLayout( new BorderLayout() );
a.addItem("Select one from combo box  ARABIC SONG" );
a.addItem("Kahter");
a.addItem("Alsafy");
a.addItem("Ali");
panel1.add(a,BorderLayout.NORTH);
panel1.add(imagePanel1,BorderLayout.CENTER);
   a.addItemListener(this);
   a.addActionListener(this);
   String filename2 = "y.jpg";
  imagePanel1.showImage(createImage(filename2));

}

public void createPage2()
{
JComboBox a = new JComboBox();
panel2 = new JPanel();
panel2.setLayout( new BorderLayout() );
a.addItem("Select one from combo box  CLASSIC SONG" );
a.addItem("Ehab");
a.addItem("Ahmed");
a.addItem("Hassan");
panel2.add(a,BorderLayout.NORTH);
panel2.add(imagePanel2,BorderLayout.CENTER);
a.addItemListener(this);
   a.addActionListener(this);
  String filename1 = "y.jpg";
  imagePanel2.showImage(createImage(filename1));
}

public void createPage3()
{
JComboBox a = new JComboBox();
panel3 = new JPanel();
panel3.setLayout( new BorderLayout() );
a.addItem("Select one from combo box  Anasheed" );
a.addItem("h");
a.addItem("a");
a.addItem("k");
panel3.add(a,BorderLayout.NORTH);
panel3.add(imagePanel3,BorderLayout.CENTER);
a.addItemListener(this);
   a.addActionListener(this);
  String filename3 = "y.jpg";
  imagePanel3.showImage(createImage(filename3));

}


public void actionPerformed(ActionEvent e)
{
if(currentClip!=null)
     currentClip.stop();

   // Get the file name
   String filename = null;
   if (song.equals("Kahter"))
     filename = "1.au";
   else if (song.equals("Alsafy"))
     filename = "2.au";
      else if (song.equals("Ali"))
       filename = "3.au";

      else if (song.equals("Ehab"))
       filename = "4.au";
      else if (song.equals("Ahmed"))
       filename = "5.au";
      else if (song.equals("Hassan"))
       filename = "6.au";
      else if (song.equals("h"))
       filename = "7.au";
      else if (song.equals("a"))
       filename = "8.au";
      else if (song.equals("k"))
       filename = "9.au";

      else if (song.equals("Select one from combo box  ARABIC SONG"))
       filename = "";

       else if (song.equals("Select one from combo box  CLASSIC SONG"))
       filename = "";

       else if (song.equals("Select one from combo box  Anasheed"))
       filename = "";
 createAudioClip(filename).play();
}


// Handle ItemEvent
public void itemStateChanged(ItemEvent e)
{
if(currentClip!=null)
      currentClip.stop();

  if(e.getSource() instanceof JComboBox)
  {
JComboBox combo = (JComboBox)e.getSource();
song = (String)combo.getSelectedItem();
    String filename = null;

       if (song.equals("Kahter"))
          filename = "1.jpg";
       else if (song.equals("Alsafy"))
          filename = "2.jpg";
    else if (song.equals("Ali"))
          filename = "12.jpg";


       else if (song.equals("Ehab"))
           filename = "13.jpg";
    else if (song.equals("Ahmed"))
           filename = "5.jpg";
    else if (song.equals("Hassan"))
               filename = "7.jpg";

       else if (song.equals("h"))
      filename = "454998992.jpg";
 else if (song.equals("a"))
   filename = "7.jpg";
 else if (song.equals("k"))
       filename = "8.jpg";

       else if (song.equals("Select one from combo box  ARABIC SONG"))
        {
          currentClip.stop();
          filename = "y.jpg";
    }

  else if (song.equals("Select one from combo box  CLASSIC SONG"))
        {
          currentClip.stop();
          filename = "y.jpg";
    }

else if (song.equals("Select one from combo box  Anasheed"))
        {
          currentClip.stop();
          filename = "y.jpg";
    }

       imagePanel1.showImage(createImage(filename));
       imagePanel2.showImage(createImage(filename));
       imagePanel3.showImage(createImage(filename));
}
}


public AudioClip createAudioClip(String filename)
{
  // Get the URL for the file name
  URL url = this.getClass().getResource("song/" + filename);
  currentClip = Applet.newAudioClip(url);
  // Return the audio clip
  return currentClip;
}

// Create an image from the specified file
public Image createImage(String filename)
{
  // Get the URL for the file name
  URL url = this.getClass().getResource("images/" + filename);
  // Obtain a Toolkit instance
  Toolkit toolkit = Toolkit.getDefaultToolkit();
  // Return the image
  return toolkit.getImage(url);
}

  // Main method to get things started
public static void main( String args[] )
{
// Create an instance of the test application
Assignment2 mainFrame = new Assignment2();
mainFrame.setVisible( true );
}
}
class ImagePanel extends JPanel {

 Image image;

 public ImagePanel() {

 }

 public void showImage(Image image) {
   this.image = image;
   repaint();
 }

 public void paintComponent(Graphics g) {
   super.paintComponent(g);
   if(image!=null)
     g.drawImage(image,0,0,this.getWidth(),this.getHeight(),this);
 }

}

لست متواجد بشكل يومي

#30

اممممم اخي الحبيب مجدي

لعلك لم تتمعن في الكود اللدي كتبته

واعتدر لم اتمكن من فحص كودك لانك غيرت اسماء الصور ولا اريد ان اغير اسماء الصور اللي عندي هههه معلش

بس نسيت ما اقلكم شيء بخصوص الكود اللي انا اضفته

1- المثد تبع الصوت ان خليتها كومنت ما تشتغل

لاني ما عندي ملفات صوتيه

فعلى الاخ شاب مسلم الغاء الكومنت منها

2- نظرا للتغييرات اللي انا سويتها لا يحتاج الاخ شاب مسلم للكود التالي

if (song.equals("Kahter"))
        filename = "kahter.jpg";
      else if (song.equals("Alsafy"))
        filename = "alsafy.jpg";
      else if (song.equals("Ali"))
        filename = "ali.jpg";

      else if (song.equals("Ehab"))
        filename = "ehab.jpg";
      else if (song.equals("Ahmed"))
        filename = "ahmed.jpg";
      else if (song.equals("Hassan"))
        filename = "hassan.jpg";

      else if (song.equals("h"))
        filename = "h.jpg";
      else if (song.equals("a"))
        filename = "a.jpg";
      else if (song.equals("k"))
        filename = "khalid.jpg";

وكما قال الاخ مجدي

يمكن التخلص ايضا من كثير من الاشياء الاخرى وجعل الكود اصغر واصغر

المهم الكود الاخير بعد كل التعديلات

import java.net.URL;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Assignment2 extends JFrame  implements ActionListener , ItemListener

{
  private AudioClip currentClip;
  private String song = " ";
  private javax.swing.JTabbedPane tabbedPane;
  private JPanel panel1;
  private JPanel panel2;
  private JPanel panel3;
  JComboBox a = new JComboBox();
  JComboBox b = new JComboBox();
   JComboBox c = new JComboBox();

  private ImagePanel imagePanel1 = new ImagePanel(a);
  private ImagePanel imagePanel2 = new ImagePanel(b);
  private ImagePanel imagePanel3 = new ImagePanel(c);


  public Assignment2() {
    setTitle("Assignment 2");

// Create the tab pages
    createPage1();
    createPage2();
    createPage3();

// Create a tabbed pane
    tabbedPane = new javax.swing.JTabbedPane();
    tabbedPane.addTab("ARABIC SONG", panel1);
    tabbedPane.addTab("CLASSIC SONG", panel2);
    tabbedPane.addTab("Anasheed", panel3);
    getContentPane().add(tabbedPane);

    setSize(400, 300);

    this.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowListener w) {
        System.exit(0);
      }
    });
  }

  public void createPage1() {

    panel1 = new JPanel();
    panel1.setLayout(new BorderLayout());
    a.addItem("Select one from combo box  ARABIC SONG");
    a.addItem("Kahter");
    a.addItem("Alsafy");
    a.addItem("Ali");
    panel1.add(a, BorderLayout.NORTH);
    panel1.add(imagePanel1, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);
    String filename2 = "y.jpg";
    imagePanel1.showImage(createImage(filename2));

  }

  public void createPage2() {

    panel2 = new JPanel();
    panel2.setLayout(new BorderLayout());
    b.addItem("Select one from combo box  CLASSIC SONG");
    b.addItem("Ehab");
    b.addItem("Ahmed");
    b.addItem("Hassan");
    panel2.add(b, BorderLayout.NORTH);
    panel2.add(imagePanel2, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);

  }

  public void createPage3() {
    panel3 = new JPanel();
    panel3.setLayout(new BorderLayout());
    c.addItem("Select one from combo box  Anasheed");
    c.addItem("h");
    c.addItem("a");
    c.addItem("k");
    panel3.add(c, BorderLayout.NORTH);
    panel3.add(imagePanel3, BorderLayout.CENTER);
    a.addItemListener(this);
    a.addActionListener(this);

  }

  public void actionPerformed(ActionEvent e) {
    if (currentClip != null)
      currentClip.stop();

    // Get the file name
    String filename = null;
    if (song.equals("Kahter"))
      filename = "kahter.wav";
    else if (song.equals("Alsafy"))
      filename = "alsafy.wav";
    else if (song.equals("Ali"))
      filename = "ali.wav";

    else if (song.equals("Ehab"))
      filename = "ehab.wav";
    else if (song.equals("Ahmed"))
      filename = "ahmed.wav";
    else if (song.equals("Hassan"))
      filename = "hassan.wav";
    else if (song.equals("h"))
      filename = "h.wav";
    else if (song.equals("a"))
      filename = "a.wav";
    else if (song.equals("k"))
      filename = "khalid.wav";

    else if (song.equals("Select one from combo box  ARABIC SONG"))
      filename = "";

    else if (song.equals("Select one from combo box  CLASSIC SONG"))
      filename = "";

    else if (song.equals("Select one from combo box  Anasheed"))
      filename = "";
    createAudioClip(filename).play();
  }

// Handle ItemEvent
  public void itemStateChanged(ItemEvent e) {
    if (currentClip != null)
      currentClip.stop();

    if (e.getSource() instanceof JComboBox) {
      JComboBox combo = (JComboBox) e.getSource();
      song = (String) combo.getSelectedItem();
      String filename = null;

      

       if (song.equals("Select one from combo box  ARABIC SONG")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      else if (song.equals("Select one from combo box  CLASSIC SONG")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      else if (song.equals("Select one from combo box  Anasheed")) {
        currentClip.stop();
        filename = "y.jpg";
      }

      imagePanel1.showImage(createImage(filename));
      imagePanel2.showImage(createImage(filename));
      imagePanel3.showImage(createImage(filename));
    }
  }

  public AudioClip createAudioClip(String filename) {
    // Get the URL for the file name
    URL url = this.getClass().getResource("song/" + filename);
    currentClip = Applet.newAudioClip(url);
   //  Return the audio clip
    return currentClip;
  }

// Create an image from the specified file
  public Image createImage(String filename) {
    // Get the URL for the file name
    URL url = this.getClass().getResource("images/" + filename);
    // Obtain a Toolkit instance
    Toolkit toolkit = Toolkit.getDefaultToolkit();
    // Return the image
    return toolkit.getImage(url);
  }

  // Main method to get things started
  public static void main(String args[]) {
// Create an instance of the test application
    Assignment2 mainFrame = new Assignment2();
    mainFrame.setVisible(true);
  }
}





 class ImagePanel extends JPanel {

 Image image;
 JComboBox a;
 public ImagePanel(JComboBox aa) {
  a=aa;
 }

 public void showImage(Image image) {

   this.image = image;
   repaint();
 }

 public void paintComponent(Graphics g) {
   super.paintComponent(g);
   if(((String)a.getSelectedItem()).startsWith("Select"))
   {

     URL url = this.getClass().getResource("images/y.jpg" );
     Toolkit toolkit = Toolkit.getDefaultToolkit();

     image = toolkit.getImage(url);
   }
   else
   {

     URL url = this.getClass().getResource("images/"+a.getSelectedItem()+".jpg" );
     Toolkit toolkit = Toolkit.getDefaultToolkit();

     image = toolkit.getImage(url);

   }
   if(image!=null)
     g.drawImage(image,0,0,this.getWidth(),this.getHeight(),this);
 }

}

لا بد من صنعاء وان طال السفر

#31

جزاكم الله خيرا

سوف افحص الكود وارد عليكم غدا ان شاء الله حيث اني عندي اختبار غدا

وبعد الاختبار سأجعل الوقت كله لهذا الكود

واسأل الله ان يكون عملكم هذا في موازين حسناتكم

وان يسركم ان تلقوه يوم القيامه

وبارك الله فيكم

ودمتم في خير

#32

جزاكم الله خيرا

الكود يعمل بشكل جيد

وبارك الله فيكم على جهدكم

ونتمنى منكم دائما مد يد العون لإخوانكم الطلبة

ابو عمر

دبلن - ايرلندا

هذا الموضوع مغلق.

مواضيع مشابهة