-
autocomplétion
Bonjour, je recherche l'algorithme pour faire de l'autocomplétion.
L'autocomplétion est lorsque vous êtes dans un logiciel et que vous écrivez le début d'un mot, ensuite le logiciel vous offre une liste de choix dépendant des premières lettre que vous avec écrites.
(Ce qui me pose le plus problème, c'est de savoir où faire afficher la listebox avec les choix, comment obtenir la position de notre curseur ... (je programme présentement en java...)
Merci
a+
-
Salut !
Je pense que ton message aurait plus la place dans les forums JAVA ;)
Il ne s'agit pas d'Algorithmie, mais de programmation... on ne pourra pas t'aider par ici ^^
-
C'est bien de l'algorithmie au début. On ne va pas commencer à programmer alors qu'on a aucune idée de comment on pourrait faire de l'auto-complétion !
A mon avis, mais c'est sans doute pas bon du tout, il faut avoir une liste des classes utilisables et de leurs membres. Il faut aussi au moins avoir une liste des variables locales et globales. Dès que l'une d'elles est utilisée - il faut faire un test por voir si ce qu'on écrit est le nom d'une variable -, la classe correspondante sera utilisée pour faire l'autocomplétion du reste avec une espèce d'arbre.
-
Bonjour,
tout dépend jusqu'où tu souhaites pousser ta complétion :
- ligne de commande, il faut alors que la complétion gère les parcours de répertoires et sous répertoires
- Programme particulier, beaucoup plus simple et il te suffira d'avoir une liste de mots clef avce un petit analyseur lexical et un autre syntaxique.
-
Bonjour,
Si tu veux faire de l'auto complétion, par exemple sur un code, une solution peut être la suivante :
Mettre dans des tables de hashage tous les symboles déclarés dans le programme, en respectant un certain ordonnancement.
Par exemple tu auras une première table de hash contenant tous les noms de classes, ainsi que les fontions déclarées et les variables de classe.
Lorsque tu rentres dans une fontions, tu construits une nouvelle table de hash dans laquelle tu vas intoduire tous les symboles propres à la fonction.
Ensuite, lorsqu'un mot est en train d'être écrit, tu vas chercher d'abord dans la table de hash locale à la fonction, puis ensuite dans la table globale.
Tu peux aussi ajouter une table de hash encore "supérieure", qui contiendra pour sa part toutes les classes de la JVM ainsi que leurs fontions.