Отображение множества JTextPanes? - PullRequest
1 голос
/ 25 февраля 2011

У меня есть небольшая проблема в определении лучших методов проектирования для отображения множества JTextPanes.Допустим, у меня есть 1000 JTextPanes, каждый JTextPane содержит стилизованное сообщение, и я хотел бы отображать их одно над другим, как сообщения, полученные в чате.Было бы лучше, если бы что-то включало JTable и помещало панели там?или просто положить их все в JPanel / JScrollPane?Я хотел бы иметь возможность удалять и добавлять JTextPanes, а также выделять / фокусировать конкретное JTextPane.Я создал альфа-прототип (даже не рассматривая прототип) решение, использующее JTable и создающее собственные модели / рендеры, просто оно кажется слишком сложным для достижения моих целей.

Интересно, насколько приемлемо было бы просто написать собственную JPanel?Также мне интересен аспект производительности до 10 000 JPanels?

Ответы [ 3 ]

2 голосов
/ 25 февраля 2011

Отображение 10k текстовых панелей не имеет смысла для меня.Вы, вероятно, не хватает ресурсов.Некоторые менеджеры макетов даже имеют ограничение на количество компонентов, которые вы можете добавить.Я думаю, что макет потока имеет ограничение 512, поэтому вам нужно будет вкладывать панели, чтобы достичь того, что вы хотите, что увеличит сложность.

На самом деле отображение 10K чего-либо также не имеет для меня большого смысла.Как пользователь собирается прокручивать и находить то, что он ищет?

Но если вам нужно что-то подобное, что позволяет вам динамически добавлять / удалять элементы, я бы посмотрел на JTable.Он уже поддерживает динамическое добавление / удаление.Также вы можете даже использовать функции фильтрации JTable, чтобы сделать ваше приложение более удобным для использования.

Я не уверен, почему вы говорите, что вам нужны пользовательские модели и средства визуализации.Вы можете использовать HTML в JTable для ваших стилизованных сообщений.

2 голосов
/ 25 февраля 2011

Почему бы не иметь 1 JTextPane и 10000 различных строк, заполняя JTextPane указанной строкой по мере необходимости?

0 голосов
/ 25 февраля 2011

... стилизованное сообщение, и я хотел бы отобразить их одно над другим

В этом случае лучше использовать JList с пользовательским средством визуализации ячеек.

...