Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Вопрос Как добавить поиск в гуишку?

Очищаешь лист с функциями и добавляешь ток те в которых названия содержит текст из поиска
чет типа такого:
Expand Collapse Copy
// class PanelComponent
// Ну или какой у тя там класс отвечает за рендер категорий

private final ArrayList<ModuleComponent> modules = new ArrayList<>();
private final Category category;

public void loadModules(String find) {
    modules.clear();
    // Карочи цикл с уловиям либо find пусто (равно "") и категория функции равна категории панели либо find не пусто и названия в нижнем регистре содержит текст из поиска в нижнем регистре.
    // Можно в любом регистре главное что-бы они были одинаковы что у функции что у текста
    for(Function function : Expensive.getInstance().getFunctionRegistry().getModules().stream().filter(m -> (find.isEmpty() && m.getCategory() == category) || (!find.isEmpty() && m.getName().toLowerCase().contains(find.toLowerCase()))).toList()) {
        modules.add(function);
    }
}
И при каждом charTyped() и keyPressed() хукаешь этот метод с текстом поиска
 
Назад
Сверху Снизу