Frage

ich bin wandern, welche Komponente das Beste für die Anzeige von schnellen Suchergebnissen in Gang ist. Ich möchte so etwas schaffen, ein Textfeld machen, wo Benutzer Text eingeben kann, während seiner Eingabe werde ich auf Datenbank schnelle Suche beenden verbessern zurück, und ich möchte Daten zeigen die Textbox unten, und er wird in der Lage sein, die Ergebnisse zu durchsuchen und auf pres Ergebnis einzugeben wird in der Tabelle angezeigt werden. So ist meine Frage gibt es eine Komponente, die bereits diese Logik für die Anzeige? Oder ist es nicht, was der beste Weg ist, dass zu implementieren.

Diese Suche wird etwas sein, was Ajax mich auf Web gibt, gleiche Logik gleichen Look and Feel, wenn es möglich ist, auf Desktop-Anwendung.

War es hilfreich?

Lösung

Möchten Sie so etwas wie eine Auto-Vervollständigen-Komponente für Java Swing?

SwingX hat eine solche Komponente. Siehe hier für den JavaDoc. Es hat eine Menge von Hilfsmethoden verschiedene Dinge zu tun, das heißt Auto-Vervollständigung ein Textfeld aus dem Inhalt eines JList.

Andere Tipps

Sie müssen zuerst einen Listener heften sich an die JTextFields benachrichtigt werden Document, wenn der Benutzer auf dem Feld (oder Änderungen es).

Von dort aus können Sie einen beliebigen serverseitigen Code abfeuern Sie benötigen. Die Ergebnisse, dass können verwendet werden, um ein Listenfeld zu aktualisieren.

Ein paar Dinge im Auge zu behalten:

  1. Der Code, um die Suche gegen das Backend zu tun, in einem anderen Thread muss
  2. Der Code, um das Listenfeld aktualisiert sollte das Listenfeld des Modells aktualisieren
  3. Sie müssen alle Ergebnisse Ihre Backend-Suche verwalten, so dass Sie nur die Listbox mit dem jüngsten Ergebnis aktualisieren (zB Benutzertypen ‚A‘, backenf sucht das. Inzwischen Benutzer eingegeben hat ‚C‘, off treten ein Back-End-Suche nach ‚AC‘. Sie müssen die Ergebnisse der ‚A‘ Suche tun sie nicht, um sicherzustellen,‘es dem listbox machen, wenn die‚AC‘Suchergebnisse zur Verfügung stehen).

ich stark, wird dringend empfohlen, einen Blick auf Verglaste Listen - das ist eine der feineren Open-Source-Java-Bibliotheken da draußen, und es macht den Großteil von dem, was Sie super einfach fragen.

Mit Hibernate Search.

Die SwingHack ( http://oreilly.com/catalog/9780596009076/ ) Buch hat ein Beispiel hierfür.

Im Interesse der zwei Fliegen mit einer Klappe schlagen: hat ein separate Indizierung Gewinde. Dies wird:

  1. Erhöhen Sie die Geschwindigkeit der Suchvorgänge, wenn sie ausgeführt werden.
  2. Verbesserung der Reaktionsfähigkeit der Benutzeroberfläche, da die Indizierung in einem separaten Thread geschieht.

Natürlich genau , wie Sie die Indizierung variiert stark in Abhängigkeit von Ihrer Anwendung. Hier ist ein guter Ort, um die Erforschung: Indexing suchen. Und bitte, ignorieren Sie den Verweis auf Web 3.0 [sic].

Es ist möglich, natürlich. Es ist zu einfach. Drop-Down für die Liste der Begriffe verwenden nur Popup-Menü. Das ist ganz einfach. Die Hintergrundverarbeitung von eingegebenen Text ist zu einfach. Genießen Sie!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top