Egy EventQueue-t implementálok, és értesítést kapok, ha AWTEventeket küldenek. Megvárom, amíg a FocusEvent példányai elküldésre kerülnek a dispatchEvent metódusnak.
A FocusEvent önmagában nem rendelkezik olyan módszerrel, amely megkérdezné, hogy a komponens fókusza nyert vagy elveszett. A metódus paramString egy karakterláncot ad vissza, amelyben az információ el van helyezve, de nem akarom feltörni vagy elemezni a karakterláncot. A tartalmaz hívás megadhatja a választ, de a visszatérési karakterlánc nem állandó, így a jövőben változhat.
A FocusEvent paramString metódusa a következő:
switch(id) {
case FOCUS_GAINED:
typeStr = "FOCUS_GAINED";
break;
case FOCUS_LOST:
typeStr = "FOCUS_LOST";
break;
default:
typeStr = "unknown type";
}
return typeStr + (temporary ? ",temporary" : ",permanent") +
",opposite=" + getOppositeComponent();
Tud más megoldást erre a problémára?