Générer une application dans des onglets

Résolu/Fermé
bouh_louh Messages postés 15 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 30 avril 2008 - 30 avril 2008 à 12:58
bouh_louh Messages postés 15 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 30 avril 2008 - 30 avril 2008 à 16:29
Bonjour,

Salut les amis,

J'ai créé une application java ,puis j'ai généré cette application plusieurs fois. Donc quand j'exécute mon application: nfenêtres s'ouvre.

Est -il possible de mettre toutes ces fenêtres dans une seule fenêtre ( Dans des onglets).!!??

A voir également:

4 réponses

Utilisateur anonyme
30 avril 2008 à 13:46
Le mieux serait d'englober ttes des fenêtres dans un JTabbedPane. Tu pourras trouver un tuto Ici

Bonne continuation ;-)
0
bouh_louh Messages postés 15 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 30 avril 2008 6
30 avril 2008 à 15:00
Merci
Voici un exemple

Frame1:
package onglet;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Frame1 extends JFrame {
  JPanel contentPane;
  JButton jButton1 = new JButton();
  JTabbedPane jTabbedPane1 = new JTabbedPane();
 private Frame2[] appli = new Frame2[2];
  //Construct the frame
  public Frame1() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  //Component initialization
  private void jbInit() throws Exception  {
    contentPane = (JPanel) this.getContentPane();
    jButton1.setBounds(new Rectangle(27, 16, 352, 30));
    jButton1.setText("jButton1");
    jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));
    contentPane.setOpaque(true);
    contentPane.setLayout(null);
    this.setSize(new Dimension(400, 300));
    this.setTitle("Frame Title");
    jTabbedPane1.setBounds(new Rectangle(22, 62, 369, 230));
    contentPane.add(jButton1, null);
    contentPane.add(jTabbedPane1, null);
  }
  //Overridden so we can exit when window is closed
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      System.exit(0);
    }
  }

  void jButton1_actionPerformed(ActionEvent e) {
    for (int i = 0; i < 2; i++) {
        appli[i] = new Frame2();
         this.getContentPane().add(appli[i]);
        appli[i].setVisible(true);

    }




  }
}

class Frame1_jButton1_actionAdapter implements java.awt.event.ActionListener {
  Frame1 adaptee;

  Frame1_jButton1_actionAdapter(Frame1 adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton1_actionPerformed(e);
  }
}



Frame2

package onglet;

import javax.swing.*;
import java.awt.*;


public class Frame2 extends JFrame {
  JButton jButton1 = new JButton();

  public Frame2() {
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  private void jbInit() throws Exception {
    jButton1.setBounds(new Rectangle(85, 91, 183, 41));
    jButton1.setText("jButton1");
    this.setLocale(java.util.Locale.getDefault());
    this.getContentPane().setLayout(null);
    this.getContentPane().add(jButton1, null);
  }
}



comment changer frame2 en JPanel????
0
Utilisateur anonyme
30 avril 2008 à 15:20
Comme ceci :
package onglet;

import javax.swing.*;
import java.awt.*;


public class Frame2 extends JPanel {
  JButton jButton1 = new JButton();

  public Frame2() {
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  private void jbInit() throws Exception {
    jButton1.setBounds(new Rectangle(85, 91, 183, 41));
    jButton1.setText("jButton1");
    this.setLocale(java.util.Locale.getDefault());
    setLayout(null);
    add(jButton1, null);
  }
}
0
bouh_louh Messages postés 15 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 30 avril 2008 6
30 avril 2008 à 16:29
Merciiiiiiiiiii bien
0