Salut,
Je voudrais faire un petit editeur de source d'un langage de programmation et je cherchai comment je pouvais faire pour coloriser les mots réservés dans un RichEdit ?
Que me conseillez vous ?
Merci d'avance,
MaTHieU_
Salut,
Je voudrais faire un petit editeur de source d'un langage de programmation et je cherchai comment je pouvais faire pour coloriser les mots réservés dans un RichEdit ?
Que me conseillez vous ?
Merci d'avance,
MaTHieU_
Bonjour,
Je te conseille d'utiliser le composant SynEdit, plutôt que RichEdit. (http://synedit.sourceforge.net/). Il est fait pour ça.
Cordialement,
Arnaud
Salut,
j'ai par curiosité essayé d'installer ce composant sous BCB6 (Pro) mais j'obtiens des erreurs de compile. D'autres personnes ayant les mêmes erreurs l'ont signalé sous SoundForge sans obtenir de réponse.
As-tu déjà rencontré le problème et,si oui, comment l'as tu résolu.
C'est avec la version 1.1 de SynEdit
Pour indication, voici les messages d'erreurs :
[Pascal Hint] SynEdit.pas(6137): Value assigned to 'SpaceCount3' never used
[Pascal Error] SynMacroRecorder.pas(375): Undeclared identifier: 'sListIndexError'
[Pascal Error] SynMacroRecorder.pas(375): There is no overloaded version of 'Error' that can be called with these arguments
[Pascal Fatal Error] SynEditReg.pas( 58 ): Could not compile used unit 'SynMacroRecorder.pas'
[Linker Fatal Error] Fatal: Unable to open file 'SYNEDITREG.OBJ'
Merci d'avance
Nico
Salut,
Une petite question avant de l'installer, fonctionne-t-il correctement sur C++ Builder 5 Pro ? Puis est-il possible de coloriser toutes sorte d'informations avec ?
Merci d'avance,
MaTHieU_
Bonjour,
C++ Builder 3 à 6 est supporté.
Pour l'erreur qui se produit à la compilation, il s'agit d'une chaine de caractère non renseignée. Il suffit de remplacer sListIndexError par une chaine de caractères Delphi quelconque.
devient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 procedure TCustomSynMacroRecorder.DeleteEvent(aIndex: integer); var iObj: Pointer; begin {$IFDEF MSWINDOWS} if fEvents = nil then TList.Error( sListIndexError, aIndex ); {$ENDIF} iObj := fEvents[ aIndex ]; fEvents.Delete( aIndex ); TObject( iObj ).Free; end;
Cela permet au composant de fonctionner parfaitement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 procedure TCustomSynMacroRecorder.DeleteEvent(aIndex: integer); var iObj: Pointer; begin {$IFDEF MSWINDOWS} if fEvents = nil then TList.Error( 'Erreur d'index de liste', aIndex ); {$ENDIF} iObj := fEvents[ aIndex ]; fEvents.Delete( aIndex ); TObject( iObj ).Free; end;
Salut,
Parfait!
Je me lance dedans après manger alors!
Merci!!!!
MaTHieU_
Oui ça marche.
Lors de l'utilisation deux erreurs apparaissaient à la compile sur des propriétés publiées.
Leur mise en commentaire ne gêne pas le fonctionnement (pour un test).
Merci
Nico
Partager