Autovervollständigung im JTextField

  • Themenstarter Themenstarter Marco_Adv
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
M

Marco_Adv

Gast
Hallo zusammen,
ich habe eine art auto vervollständigung Programmiert nur gibt es nun ein kleines Problem mit der Markierung und der Caret Position
so sieht der Code aus hängt an einem KeyReleasedListener auf dem TextField

Code:
private void packageAutoCompletion(){
		int length = getPackageId1TextField().getText().length();
		if(getPackageId1TextField().getText().length()>=2){
			String packageId = getPackageId1TextField().getText().trim().toUpperCase();
			Iterator iter = packages.iterator();
			while(iter.hasNext()){
				PackageDescription packageDesc = (PackageDescription)iter.next();
				String id = packageDesc.getPackageId().toUpperCase();
				if(id.contains(packageId)){
					getPackageId1TextField().setText(id);
                                        getPackageId1TextField().setCaretPosition(length);
					getPackageId1TextField().setSelectionStart(length);
	             			getPackageId1TextField().setSelectionEnd(getPackageId1TextField().getText().length());
					return;
				}
			}
		}
	}

Das Problem hier ist nun entweder ich markiere den text und setzte den Caret vorher dann steht dieser an letzter Stelle, oder ich setzt ihn danach dann verliere ich die Markierung hat jemand ne Idee wie ich dieses Problem löäsen kann
Danke Marco
 
Ohne jetzt deinen Code gelesen zu haben, aber du versuchst nicht zufällig ein JTextField zu schreiben, welchem z. b. eine Liste von Begriffen übergeben wird, die dann (bereit zum Überschreiben) vorgeblendet werden!? Sowas hab ich nämlich mal programmiert, müsste es nur wieder suchen 😉
 
Ja sowas in der art suche ich bzw genau das wenn du mal suchen würdest wär das sehr cool
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben