von Sheldon2012 » 04 Jul 2015, 13:05
Das habe ich jetzt mal probiert, aber irgenwie funktioniert der Vergleich nicht.
Siehst Du, was ich falsch mache?
Die auskommentierten Abschnitte sind die Alternative, die zum jeweiligen Index in der Box springt.
Das geht bei mir nur in dieser Box, weil die als einzige alphabetisch sortiert sein soll.
Code: Alles auswählen
mTitleFilterBox.getEditor().getEditorComponent().addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() != 38 && e.getKeyCode() != 40 && e.getKeyCode() != 10) {
String a = mTitleFilterBox.getEditor().getItem().toString();
int st = 0;
/*
List<String> titleFilters = new ArrayList<String>();
for (int i = 0; i < mTitleFilterBox.getItemCount(); i++) {
titleFilters.add(mTitleFilterBox.getItemAt(i).toString());
}
*/
mTitleFilterBox.removeAllItems();
for (int i = 0; i < titleFilterValues.toArray().length; i++) {
if (titleFilterValues.get(i).getName().toUpperCase().startsWith(a.toUpperCase())) {
mTitleFilterBox.addItem(titleFilterValues.get(i));
st++;
}
}
/*
for (int i = 0; i < titleFilters.toArray().length; i++) {
if (titleFilters.toArray()[i].toString().toUpperCase().startsWith(a.toUpperCase())) {
mTitleFilterBox.setSelectedIndex(i);
st++;
break;
}
}
*/
mTitleFilterBox.getEditor().setItem(new String(a));
mTitleFilterBox.hidePopup();
if (st != 0) {
mTitleFilterBox.showPopup();
}
}
}
});
Das habe ich jetzt mal probiert, aber irgenwie funktioniert der Vergleich nicht.
Siehst Du, was ich falsch mache?
Die auskommentierten Abschnitte sind die Alternative, die zum jeweiligen Index in der Box springt.
Das geht bei mir nur in dieser Box, weil die als einzige alphabetisch sortiert sein soll.
[code]
mTitleFilterBox.getEditor().getEditorComponent().addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() != 38 && e.getKeyCode() != 40 && e.getKeyCode() != 10) {
String a = mTitleFilterBox.getEditor().getItem().toString();
int st = 0;
/*
List<String> titleFilters = new ArrayList<String>();
for (int i = 0; i < mTitleFilterBox.getItemCount(); i++) {
titleFilters.add(mTitleFilterBox.getItemAt(i).toString());
}
*/
mTitleFilterBox.removeAllItems();
for (int i = 0; i < titleFilterValues.toArray().length; i++) {
if (titleFilterValues.get(i).getName().toUpperCase().startsWith(a.toUpperCase())) {
mTitleFilterBox.addItem(titleFilterValues.get(i));
st++;
}
}
/*
for (int i = 0; i < titleFilters.toArray().length; i++) {
if (titleFilters.toArray()[i].toString().toUpperCase().startsWith(a.toUpperCase())) {
mTitleFilterBox.setSelectedIndex(i);
st++;
break;
}
}
*/
mTitleFilterBox.getEditor().setItem(new String(a));
mTitleFilterBox.hidePopup();
if (st != 0) {
mTitleFilterBox.showPopup();
}
}
}
});
[/code]