TDM Geschrieben 8. August 2006 Geschrieben 8. August 2006 Hallo, ich habe das Problem, dass ich das Event-Handling eines Panels verkürzen möchte und das ganze am Beispiel eines Textfeldes. Bis jetzt hab ich für jedes Textfeld einen Event-Listener erstellt. Diese sind anonyme Klassen. Bei 20-30 anonymen Klassen verlier ich aber den Überblick. Also dachte ich mir das wie folgt: public class TestDymMet { [INDENT]private JTextfield txtTest = new JTextField();[/INDENT] [INDENT]TestDymMet() { [INDENT]txtTest.addKeyListner(new Test_keyAdapter(this));[/INDENT] }[/INDENT] [INDENT]protected void keyAdapter(KeyEvent e) { [INDENT]String methodName = ((JComponent) e.getSource()).getName() + "_keyReleased"; try { [INDENT]Method method = getClass().getMethod(methodName, e.getClass()); method.invoke(this, e);[/INDENT] } catch (Exception ex) { [INDENT]ex.printStackTrace();[/INDENT] }[/INDENT] }[/INDENT] [INDENT]protected void txtTest(KeyEvent e){ [INDENT]txtTest.setTest("test");[/INDENT] }[/INDENT] } class Test_keyAdapter extends KeyAdapter{ TestDymMet adaptee; Test_keyAdapter(TestDymMet adaptee){ this.adaptee = adaptee; } public void keyPressed(KeyEvent e) { adaptee.keyAdapter(e); } } So... Problem an der Sache ist nur, in der Struktur kommt immer eine java.lang.NoSuchMethodException Wenn die Funkion txtTest public ist, geht das Meine Frage also: kann ich Methoden dynamisch laden wenn diese protected oder private sind ?
TDM Geschrieben 8. August 2006 Autor Geschrieben 8. August 2006 Problem gelöst.. getDeclaredMethod sucht alle Methoden, getMethod nur in public
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden