Partage
  • Partager sur Facebook
  • Partager sur Twitter

Applet permettant de remplacer les balises par < et >

Sujet résolu
    19 octobre 2010 à 17:00:19

    Bonjour,

    Je voudrais créer une applet où il y aurai un JTextArea pour la saisie d'un texte et un textArea pour le résultat retourner.

    Le traitement serai de remplacer tout les "<" et ">" par "&lt;" et "&gt;" afin de pouvoir intégrer le résultat obtenu sur une page html sans que les balises soit prisent en compte (dans des <pre> je crois, mais ça c'est un détail ;) )

    J'espère que je me suis bien fait comprendre :euh:


    J'ai commencé, mais comme je débute, j'ai un peu de mal à trouver les problèmes d'affichage :o :

    import java.applet.*;
       import java.awt.*;
       import java.net.URL;
       import java.io.*;
       import java.awt.*;
       import javax.swing.*;
    
        public class remplaceBalise extends Applet
       {
       
          private JTextArea area;
          
           public void init()
          {
             Panel Bouton = new Panel(); // nouveau plan de travail
    	 Bouton.setLayout( new FlowLayout()); // Positionnement de gauche à droite
             Button Executer = new Button("Executer");
             Bouton.add(Executer);
    	 Panel Saisie = new Panel(); // nouveau plan de travail
    	 Saisie.setLayout( new FlowLayout());
             area = new JTextArea(400, 50);
             Saisie.add(area);
             
          	
          }
       
           public void paint(Graphics g)  
          {
                      
              
             
             
             		
             
          }
           public void start()
          {
          
          }
       	
           public boolean action(Event e, Object arg)
          {
             if (arg.equals("Executer") ) 
             {
                String fichier = area.getText();
             }
          	
             return true;
          }
       
       }
    


    Pour l'instant, je n'ai fait que stocker le text dans un string après l'appui d'un bouton, et encore je ne sais pas si sa fonctionne :-°


    Voici se qu'il faut mettre dans un fichier xhtml :

    <applet code="remplaceBalise.class" width=1200 height=400 align="middle">
    				  Votre navigateur n'est pas compatible Java ! 
    		</applet>
    



    Merci d'avance à tous :D
    • Partager sur Facebook
    • Partager sur Twitter
      21 octobre 2010 à 17:49:48

      bonjour,
      et les méthodes replace() et replaceAll() de la classe String ?

      http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#replace(char, char)

      • Partager sur Facebook
      • Partager sur Twitter
        28 octobre 2010 à 1:58:57

        Merci beaucoup pour ces fonctions, je me demande pourquoi je n'y ai pas pensé avant :(
        Mais j'ai quand même besoin d'aide pour les placements de textarea et bouton car je vais faire un autre projet et j'aurai besoin de ça ! Peut on positionner un truc (bouton, textarea...) en x et y ?

        Avez vous également une solution à ce problème : j'ai un menu déroulent en html css, mais lorsqu'il se déroule sur une applet, c'est l'applet qui se met au dessus et qui cache le menu, comment y remédier ? :euh:

        Le voici : http://stratskidrow2on2esl.free.fr/ :p
        • Partager sur Facebook
        • Partager sur Twitter
          28 octobre 2010 à 8:39:02

          bonjour,
          1)setLocation(x,y) ou setBounds(rectangle).
          2)z-index en css.
          • Partager sur Facebook
          • Partager sur Twitter
            29 octobre 2010 à 21:12:58

            Merci pour la première solution,
            Malheureusement les z-index ne marche pas ! J'y avais déjà pensé ^^
            • Partager sur Facebook
            • Partager sur Twitter
              31 octobre 2010 à 1:35:31

              Comment utilise-t-on setLocation(x,y) et setBounds(rectangle) ?
              J'ai chercher des doc mais je ne trouve pas, quelqu'un pourrait m'aider svp ^^ ?
              • Partager sur Facebook
              • Partager sur Twitter
                7 novembre 2010 à 18:14:21

                je ne comprend pas à quoi pourai me servir setLocation(x,y) et setBounds(rectangle), c'est pas pour placer des panel ?
                • Partager sur Facebook
                • Partager sur Twitter
                  19 novembre 2010 à 13:56:17

                  Le problème était qu'il fallait mettre des add(Bouton)... (ajouter les Panel quoi !)

                  J'ai enfin fini l'applet, la voici (je l'hébergerai bientôt sur un ftp) :

                  import java.applet.*;
                     import java.awt.*;
                     import java.net.URL;
                     import java.awt.*;
                     import javax.swing.*;
                     import javax.swing.border.*;
                  
                      public class remplaceBalise extends Applet
                     {
                     
                        private JTextArea texteBalise;
                        private TextArea htmlConverti;
                     	
                         public void init()
                        {
                           setBackground(Color.white);
                        
                           Panel AppletEntiere = new Panel();
                           AppletEntiere.setLayout(new BorderLayout());
                        	
                           Panel LesBoutons = new Panel();
                           Button Convertir = new Button("Convertir");
                           LesBoutons.setLayout(new FlowLayout());
                           LesBoutons.add(Convertir);
                        	
                           Panel LesLabel = new Panel();
                           LesLabel.setLayout(new FlowLayout());
                           
                           Label inserez = new Label("Inserez votre fichier HTML ici :");
                           LesLabel.add(inserez);
                           LesLabel.add(new Label("                                                                                                          ")); 
                           Label result = new Label("Resultat (\"<\" devient \"&lt;\" et \">\" devient \"&gt;\") :");
                           LesLabel.add(result);
                  			LesLabel.add(new Label("                                                               ")); 
                  
                           Panel SautLignes = new Panel();
                           SautLignes.setLayout(new FlowLayout());
                        	
                           Panel LesArea = new Panel();
                           texteBalise = new JTextArea("", 45, 45);			
                           htmlConverti = new TextArea("", 48, 70); //hauteur, largeur !
                           LesArea.setLayout(new BorderLayout());
                           LesArea.add(new Label("->"));
                           LesArea.add("West", texteBalise);
                           LesArea.add("East", htmlConverti);
                           JScrollPane scrollPane = new JScrollPane(texteBalise,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
                           LesArea.add(scrollPane);
                        	
                           AppletEntiere.add("North", LesBoutons);
                           AppletEntiere.add("Center", LesLabel);
                           AppletEntiere.add("South", LesArea);
                        	
                           add(AppletEntiere);
                        	
                        	
                        
                        }
                     
                         public void paint(Graphics g)  
                        {
                        	
                        }
                     	
                         public void start()
                        {
                        
                        }
                     	
                         public boolean action(Event e, Object arg)
                        {
                           if (arg.equals("Convertir") ) 
                           {
                              String fichier = texteBalise.getText();
                              fichier = fichier.replaceAll("<", "&lt;");
                              fichier = fichier.replaceAll(">", "&gt;");
                  				htmlConverti.setText("");
                              htmlConverti.insertText(fichier, 0);
                           }
                           repaint();
                           return true;
                        }
                     	
                     }
                  
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Applet permettant de remplacer les balises par &lt; et &gt;

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown