Comment utiliser un fichier de configuration

patRachel Messages postés 14 Date d'inscription dimanche 24 septembre 2006 Statut Membre Dernière intervention 10 novembre 2006 - 26 sept. 2006 à 12:31
patRachel Messages postés 14 Date d'inscription dimanche 24 septembre 2006 Statut Membre Dernière intervention 10 novembre 2006 - 27 sept. 2006 à 11:35
j'ai un fichier  .conf dont le contenu est:




categorie commentaire(



keywords:("#"*EOL)



niveau :0



couleur: Color.gray



)



categorie etichette(



keywords:(+":")



niveau :1



couleur: Color.red



)



categorie instruction(



keywords:("add","addi","sub","nop","beq","blt","bgt","jump","jr","lw","sw","syscall", "move")



niveau:2



couleur: Color.blue



)


categorie default(


keywords: +SP


niveau:0


couleur: Color.black


)






je veux utiliser ce fichier de configuration pour que mon editeur de texte  reconnaisse et colore les  keywords  à chaque tant que je tape Enter pour aller à la ligne .comment est ce que je vais faire?
voilà le code de mon editeur de texte:

import javax.swing.*; public abstract class Interface_Finestra_principale extends JFrame {

  
 public abstract void aggiungi_jcomponenti();
       
 }

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

 

public class Finestra_Principale extends Interface_Finestra_principale{
 private  JTextComponent  editor;
 private JPopupMenu popup ;
 private JFileChooser fileChooser;

 class PopupListener extends MouseAdapter
    {

        public void mousePressed(MouseEvent e)
        {
          
   if(e.isPopupTrigger())
                popup.show(e.getComponent(), e.getX(), e.getY());
        }

        public void mouseReleased(MouseEvent e)
        {
            if(e.isPopupTrigger())
                popup.show(e.getComponent(), e.getX(), e.getY());
        }

        PopupListener()
        {
            super();
        }
    }

 

  public Finestra_Principale(){
   super();
   popup = new JPopupMenu();
         fileChooser = new JFileChooser();
        
         editor = this.createEditor();
         editor.setFont(new Font("Verdana", 0, 12));

        
         PopupListener  popupListener= new  PopupListener();
         editor.addMouseListener(popupListener);
         JComponent centerPanel = createCenterComponent();
        
         getContentPane().add("Center", centerPanel);
       
         fileChooser = new JFileChooser();
         setDefaultCloseOperation(0);
        
        
   this.setTitle("SyntaxEditor");
   this.setSize(500,400);
   
  } 
  

             ActionListener openAction = new ActionListener() {

             public void actionPerformed(ActionEvent e) {
               
              openText();
                
             }
            
         };
        
         ActionListener saveAction = new ActionListener() {
      
             public void actionPerformed(ActionEvent e){
                 saveText();
             }
            
             
     };
    
    

  
        
  public JMenuItem[] createJMenuItem() {
   JMenuItem[]jmi={new JMenuItem("Open"),new JMenuItem("Save"),new JMenuItem("Save As")};
   return jmi;
  }
  
  
 public JMenuBar createJMenuBar() {
 
  JMenuBar MenuBar=new JMenuBar();
          JMenu file=new JMenu("File");
          file.setMnemonic(KeyEvent.VK_F);
       
          JMenuItem[] jmi=this.createJMenuItem();
         
          jmi[0].setMnemonic(KeyEvent.VK_O);
          jmi[0].setAccelerator(javax.swing.KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
          jmi[2].setMnemonic(KeyEvent.VK_S);
          jmi[2].setAccelerator(javax.swing.KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
         
          jmi[0].addActionListener(openAction);
          file.addSeparator();
          //jmi[1].addActionListener(saveAction);
           jmi[2].addActionListener(saveAction);        
       
          for(int i=0;i<3;i++){
    file.add(jmi[i]);
   }
  
          MenuBar.add(file);
       

 return MenuBar;
 }  
 
 
 public JToolBar createJToolBar() {
  JToolBar jtb=new JToolBar();
  JButton newbutton = new javax.swing.JButton();
  JButton openbutton = new javax.swing.JButton();
        JButton savebutton = new javax.swing.JButton();
        openbutton.setIcon(new ImageIcon("/PROGETTO/open.jpg"));
        openbutton.setToolTipText("Apri un file di testo");
        openbutton.addActionListener(openAction);
        savebutton.setIcon(new ImageIcon("/PROGETTO/Save.jpg"));
        savebutton.setToolTipText("Salva con nome");
        savebutton.addActionListener(saveAction);
       jtb.add(openbutton);
      
       jtb.add(savebutton); 
 
  
    
        
    
 return jtb;
 }
 
 
    public  JTextComponent createEditor(){
     JTextArea txt=new JTextArea();
     
     char c=txt.getFocusAccelerator();
     
     
     return   txt;
     }

    public JComponent createCenterComponent(){
        if(editor == null)
            editor = this.createEditor();
        return  new JScrollPane(editor);
    }
 

 public void openText(){
       
      
            int response = fileChooser.showOpenDialog(new Finestra_Principale());
            if(response == 0)
                try{
                    File f = fileChooser.getSelectedFile();
                    Reader in = new FileReader(f);
                    editor.read(in, null);
                    setTitle(f.getName() + ".txt");
                }
                catch(Exception e)
                {
                    JOptionPane.showMessageDialog(null, "Errore nel caricamento file.", "Errore", 0);
                }
       
       
                try{
                    File f = fileChooser.getSelectedFile();
                    java.io.Reader in = new FileReader(f);
                    editor.read(in, null);
                    setTitle(f.getName() + ".txt");
                }
                catch(Exception e)
                {
                    JOptionPane.showMessageDialog(null, "Errore nel caricamento file.", "Errore", 0);
                }
       
          
        }
   

  public void saveText(){
         int response = fileChooser.showSaveDialog(new Finestra_Principale());
         if(response == 0)
             try{
              
                 File f = fileChooser.getSelectedFile();
                 Writer out = new FileWriter(f);
                 editor.write(out);
                 setTitle(f.getName() + " - NOTEPAD 2.0");
             }
             catch(Exception e)
             {
                 JOptionPane.showMessageDialog(null, "Errore nel salvataggio file.", "Errore", 0);
             }
     }

  public void aggiungi_jcomponenti() {
   JMenuBar jmb=this.createJMenuBar();
   JToolBar jtb=this.createJToolBar();
   
   this.setJMenuBar(jmb);
   this.add(jtb,BorderLayout.NORTH);
   
  }
 
 
 public void visualizza(){
  
  this.setVisible(true);
  
 }
        

  }

5 réponses

mouness Messages postés 97 Date d'inscription vendredi 21 juillet 2006 Statut Membre Dernière intervention 30 octobre 2007
26 sept. 2006 à 13:27
salut
alors pour commencer ton code c du JAVA ici les gens font du php ensuite 


  public Finestra_Principale(){
methode sans type même pas void

editor.setFont(new Font("Verdana", 0, 12));
il faudrait peu etre un   import java.awt.Font;

et pour finir dans les methode openText() et saveText()
tu cherche a instancier la classe Finestra_Principale()
int response = fileChooser.showOpenDialog(new Finestra_Principale());
int response = fileChooser.showSaveDialog(new Finestra_Principale());

je trouve ca bizarre

va du cotée du forum java plutot il seront mieux t'aider
@++
0
patRachel Messages postés 14 Date d'inscription dimanche 24 septembre 2006 Statut Membre Dernière intervention 10 novembre 2006
26 sept. 2006 à 13:58
ok merci
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
26 sept. 2006 à 14:04
Salut,
En fait tu n'es pas sur un forum pour le php, mais dans le bar, qui traite de discussions libres.
Je deplace le message vers le forum java

Mx
MVP C# 
0
mouness Messages postés 97 Date d'inscription vendredi 21 juillet 2006 Statut Membre Dernière intervention 30 octobre 2007
27 sept. 2006 à 09:08
salut
hier soir je marcher dans la rue et j'ai repenser a ca
mais au faite
public Finestra_Principale(){
c'est le constructeur donc normal qu'il n'y est pas de type
desoler pour ca
@+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
patRachel Messages postés 14 Date d'inscription dimanche 24 septembre 2006 Statut Membre Dernière intervention 10 novembre 2006
27 sept. 2006 à 11:35
oui mais mon probleme etais de savoir comment utiliser mon fichier de configuration pour colorer les keyworks
0
Rejoignez-nous