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
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
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