有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用java接口“调用”addEventFilter方法

我怎样才能正确地使用它

EventHandler<KeyEvent> handler = event -> System.out.println("EeventHandler");

    EventType<KeyEvent> event = KeyEvent.KEY_RELEASED;

    List<Field> txtFields = Arrays.stream(getClass().getDeclaredFields()).filter(field -> field.getType().isAssignableFrom(TextField.class)).collect(Collectors.toList());
    txtFields.forEach(field -> {
        try {
            Method m = field.getType().getMethod("addEventFilter", event.getClass(), EventHandler.class);
            m.invoke(field, event, handler);
        } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
            e.printStackTrace();
        }
    });

获取“m.invoke(字段、事件、处理程序);”上的“IllegalArgumentException:对象不是声明类的实例”错误,那么EventHandler对象的任何内容都可能是错误的


共 (0) 个答案