2010-11-20 5 views
1

J'ai créé une application Java autonome en utilisant netbeans 6.9. Dans mon application, si un utilisateur sélectionne certaines options (valeurs pour certains champs spécifiques), mon application génère automatiquement son code correspondant. Ce code est affiché dans la zone de texte de mon application elle-même.
Par exemple: Dans mon application, j'ai un bouton pour une nouvelle variable. Si l'utilisateur clique dessus, mon application demande le nom de la variable. Après que le nom a été entré, mon application génère automatiquement le code correspondant pour cela.
Mais je veux une option pour l'utilisateur pour éditer ce code.
Supposons que l'utilisateur entre lui-même ce code de déclaration de variable dans la zone de texte, alors mon application doit détecter la présence de ce code.
Je veux dire dans mon application, j'ai aussi une liste déroulante qui montre toutes les variables déclarées. Donc, si l'utilisateur entre ce code et l'enregistre alors dans mon application cette nouvelle variable pour laquelle l'utilisateur a écrit le code, devrait être présent.
Quelqu'un peut-il m'aider avec ceci.
-Merci à l'avanceDétection des modifications effectuées dans le code

+0

Quelle est votre question réelle? –

+0

Ma vraie question est comment puis-je donner cette facilité dans mon application de détection des changements effectués dans ma zone de texte et l'intégration de ces changements dans mon application. – Antrromet

Répondre

0

Même si vous pouvez faire ce que vous demandez en Java, jusqu'à un certain point, Java n'est probablement pas le langage le mieux adapté à cette tâche. Un langage dynamique serait probablement mieux. Il existe un certain nombre de langages dynamiques pour la machine virtuelle Java. Peut-être que Groovy serait un bon ajustement, car il a une syntaxe similaire à Java.

Avertissements mis à part, à faire ce que vous faites en Java que vous voudriez:

  1. Générer un fichier source Java contenant le contenu de votre zone de texte. (Cela peut effectivement être fait en mémoire en créant votre propre implémentation de JavaFileManager et amis.)
  2. invoquons la Java compiler sur ladite source.
  3. Charger bytecode généré avec un ClassLoader.
+0

Pouvez-vous expliquer plus sur this.What exactement devrait être utilisé dans groovy pour lire que le texte de façon dynamique JTextarea.And ce que je peux comprendre, je ne pense pas que Antrromet parle code.I java pense que le code peut être dans une langue différente, mais l'application est construite en utilisant Java. –

+0

Vous "lisez dynamiquement le texte de JTextarea" comme vous le faites toujours: en utilisant 'getText' ou quoi que ce soit. Je n'ai jamais utilisé Groovy donc je ne peux pas fournir de détails mais la plupart des langages dynamiques ont une fonction "eval" ou similaire qui prend du texte et l'évalue. À partir des sons de la question, vous voudriez maintenir un environnement réutilisé pour chaque appel à évaluer, mais étant donné l'imprécision de la question, il est difficile de fournir plus de détails que cela. De même, il n'y a aucune mention d'une langue autre que Java dans la question, donc on ne peut que deviner quelles sont les exigences réelles. –

Questions connexes