Se connecter / S'enregistrer
Votre question

générer une application dans des onglets

Tags :
  • Java
  • Programmation
Dernière réponse : dans Programmation
30 Avril 2008 12:57:53

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: n fenêtres s'ouvre.

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

Autres pages sur : generer application onglets

30 Avril 2008 13:12:49

Google > JDesktopPane
Google > JTabbedPane

ps : mais il faut que tu convertisse tes JFrame en JPanel
30 Avril 2008 14:58:29

Voici un exemple

Frame1:
  1. package onglet;
  2.  
  3. import java.awt.*;
  4. import java.awt.event.*;
  5. import javax.swing.*;
  6.  
  7.  
  8. public class Frame1 extends JFrame {
  9. JPanel contentPane;
  10. JButton jButton1 = new JButton();
  11. JTabbedPane jTabbedPane1 = new JTabbedPane();
  12. private Frame2[] appli = new Frame2[2];
  13. //Construct the frame
  14. public Frame1() {
  15. enableEvents(AWTEvent.WINDOW_EVENT_MASK);
  16. try {
  17. jbInit();
  18. }
  19. catch(Exception e) {
  20. e.printStackTrace();
  21. }
  22. }
  23. //Component initialization
  24. private void jbInit() throws Exception {
  25. contentPane = (JPanel) this.getContentPane();
  26. jButton1.setBounds(new Rectangle(27, 16, 352, 30));
  27. jButton1.setText("jButton1");
  28. jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));
  29. contentPane.setOpaque(true);
  30. contentPane.setLayout(null);
  31. this.setSize(new Dimension(400, 300));
  32. this.setTitle("Frame Title");
  33. jTabbedPane1.setBounds(new Rectangle(22, 62, 369, 230));
  34. contentPane.add(jButton1, null);
  35. contentPane.add(jTabbedPane1, null);
  36. }
  37. //Overridden so we can exit when window is closed
  38. protected void processWindowEvent(WindowEvent e) {
  39. super.processWindowEvent(e);
  40. if (e.getID() == WindowEvent.WINDOW_CLOSING) {
  41. System.exit(0);
  42. }
  43. }
  44.  
  45. void jButton1_actionPerformed(ActionEvent e) {
  46. for (int i = 0; i < 2; i++) {
  47. appli[i] = new Frame2();
  48. this.getContentPane().add(appli[i]);
  49. appli[i].setVisible(true);
  50.  
  51. }
  52.  
  53.  
  54.  
  55.  
  56. }
  57. }
  58.  
  59. class Frame1_jButton1_actionAdapter implements java.awt.event.ActionListener {
  60. Frame1 adaptee;
  61.  
  62. Frame1_jButton1_actionAdapter(Frame1 adaptee) {
  63. this.adaptee = adaptee;
  64. }
  65. public void actionPerformed(ActionEvent e) {
  66. adaptee.jButton1_actionPerformed(e);
  67. }
  68. }


Frame2

  1. package onglet;
  2.  
  3. import javax.swing.*;
  4. import java.awt.*;
  5.  
  6.  
  7. public class Frame2 extends JFrame {
  8. JButton jButton1 = new JButton();
  9.  
  10. public Frame2() {
  11. try {
  12. jbInit();
  13. }
  14. catch(Exception e) {
  15. e.printStackTrace();
  16. }
  17. }
  18. private void jbInit() throws Exception {
  19. jButton1.setBounds(new Rectangle(85, 91, 183, 41));
  20. jButton1.setText("jButton1");
  21. this.setLocale(java.util.Locale.getDefault());
  22. this.getContentPane().setLayout(null);
  23. this.getContentPane().add(jButton1, null);
  24. }
  25. }


comment changer frame2 en JPanel????
Contenus similaires
30 Avril 2008 16:34:07

moi pas connaitre ces trucs donc moi comment trouver avec google.loooooooool
merci mon ami
its ok
30 Avril 2008 16:59:08

...
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS