Code-Vervollständigung und Syntax-Highlighting in Swing
Ich haben ein Projekt gestartet, das erfordert, dass syntax-highlighting und code-completion (daraufhin öffnet sich ein Fenster an der Cursor-Position mit Vorschlägen) und kann nicht finden, eine geeignete Lösung. Es gibt mehrere Swing-Komponenten, die text-input-z.B. JTextArea, JTextPane und JEditorPane, das macht es deutlich schwieriger, um herauszufinden, welche ist die richtige verwenden.
Ist das Projekt ein Programmierer bestimmte text-editor, die integration mit der unity game engine. Diese Bedeutung der code-Vervollständigung und-highlighting für JavaScript-und C# - syntax.
Es offensichtlich sein könnte, aber die Allgemeine Idee ist, dass, wenn der Benutzer Arten, bestimmte Wörter ändern, um eine spezifizierte Farbe, diese Worte werden in einer Textdatei gespeichert. Für die code-Vervollständigung, die ich brauche, um in der Lage sein zu greifen, die derzeit eingegeben Buchstaben, diese Erkennung wird der Prozess " starten Sie durch mit dem Leerzeichen als Trennzeichen.
Danke für deine Zeit 🙂
- "Vielen Dank für Ihre Zeit :)" haben Sie eine Frage? Wenn dem so ist, was ist es? BTW -
JTextArea
ist für Klartext, so wird ungeeignet für diese Aufgabe, in der Erwägung, dassJTextPane
undJEditorPane
Unterstützung von styled-text.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Siehe meine Antwort hier die zeigt auto-Vervollständigung für
JTextComponent
, kann es zeigen pop-up-Fenster von auto-Vervollständigung Worte an der aktuellen caret-index aufJTextPane
/JEditorPane
(+1 @AndrewThompson für die Idee):Für
JTextField
:und für andere
JTextComponent
s ich.eJTextPane
,JEditorPane
etc sein gezeigt an der aktuellen caret-index:Ändern Sie den text Farbe der Worte (ich.e-syntax highlight) haben Sie einen Blick hier:
Oder wenn Sie möchten lieber ein markiertes Wort. Sehen hier:
kann man sich Komponenten aus jintilla (ein JNI-wrapper um die weit verbreitete scintilla) oder jedit, wenn Ihre Lizenzbedingungen passend zu Ihrem Anwendungsfall.