У меня есть очень старый код, который использует Box
, чтобы перечислить некоторую информацию. Я создаю это так:
Box patterns = Box.createVerticalBox();
Очень (очень) часто новые элементы добавляются, а старые элементы удаляются, например:
label = new JLabel("xyz");
patterns.add(label);
и позже
patterns.remove(label);
всякий раз, когда что-то добавляется или удаляется, я должен перекрасить его, поэтому я звоню:
patterns.revalidate();
patterns.repaint();
Проблема в том, что, так как это происходит очень часто, это душит интерфейс. Я думаю, что мне нужна лучшая реализация, чтобы сделать ее более эффективной.
Я знаю, что могу вести список активных элементов в фоновом режиме, а затем периодически обновлять фактический интерфейс (пакетное обновление), но ...
Может кто-нибудь предложить более эффективный альтернативный подход?