IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Onglet & JSyntaxPane


Sujet :

AWT/Swing Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Je suis en train de créer un éditeur de texte en utilisant JSyntaxPane pour la coloration de code.

    Le problème est que l'affichage de JScrollPane est très minimisé, en une ligne, comme un JTextField.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    public class WindowIDE extends JFrame {    
        private Container globalContenu ;
     
        public WindowIDE() {
     
            globalContenu = getContentPane();                    
     
            globalContenu.setLayout(new BorderLayout());
     
            JTabbedPane tabbedPane = new JTabbedPane();
     
            //onglet1
            JPanel panneau1=new JPanel ();        
            JSyntaxPane synpan1=new JSyntaxPane(panneau1);
            tabbedPane.addTab("onglet1",  panneau1);
     
            //onglet2   
            JPanel panneau2= new JPanel();    
            JSyntaxPane synpan2 = new JSyntaxPane(panneau2);
            tabbedPane.addTab("onglets2",  panneau2);          
     
            globalContenu.add( tabbedPane, BorderLayout.CENTER);
     
            setSize(800, 600);
            setResizable(true);
            setVisible(true);
            setDefaultCloseOperation(EXIT_ON_CLOSE);        
        }
    }
    Et voici l'autre classe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public class JSyntaxPane extends JPanel { 
     
        public JSyntaxPane(JPanel contenu) {
     
            DefaultSyntaxKit.initKit();
     
            final JEditorPane codeEditor = new JEditorPane();
            JScrollPane scrPane = new JScrollPane(codeEditor);
            contenu.add(scrPane);
     
            codeEditor.setContentType("text/java");
            codeEditor.setText("public static void main(String[] args)" );
        }
    }
    Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

    Merci d'avance pour votre aide.

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Utilise un BorderLayout pour tes JPanel panneau1 et panneau2.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    merci beaucoup SINOK
    hey this all yours

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 8
    Points : 5
    Points
    5
    Par défaut ongelt remove &jsyntaxpane
    bonjour
    j'au un autre probleme , c est que j'arrive pas à ajouter le "X" pour fermer l'onglet.

  5. #5
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 977
    Points
    7 977
    Par défaut
    Je ne penses pas (sans être 100% certain) que tu puisses rajouter un bouton pour "fermer" un onglet en utilisant un tabbedpane de base.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Futur Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Close Button
    et comment faire ??

  7. #7
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Si, c'est tout à fait possible depuis java 6 avec la méthode setTabComponentAt

    Il te suffit de lui passer un JButton sur lequel tu auras placé un ActionListener qui fermera l'onglet.

    (ensuite, pour la croix, une icône fera l'affaire).
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  8. #8
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 977
    Points
    7 977
    Par défaut
    Bien vu !

    Comme quoi un 2 ème avis peut tout changer.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Futur Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    biensur
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] Couleurs des onglets d'un TabControl
    Par ineznia dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/04/2004, 13h18
  2. mettre une JScrollBar sur un onglet
    Par thedd dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 02/03/2004, 20h12
  3. [BCB6] Probleme onglet dans IDE
    Par bgautier dans le forum C++Builder
    Réponses: 5
    Dernier message: 21/01/2004, 16h20
  4. Changer dynamiquement la position des onglets
    Par ginnovy dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/09/2002, 18h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo