Jtextpane и jtextarea

Anonim

JTextPane против JEditorPane

Важно отметить основные функции JTextPane и Jtextarea, прежде чем обсуждать сходства и различия между ними. JTextPane и JEditorPane являются производными от javax.swing.text.JTextComponent, а JTextPane - как подкласс JEditorPane. Из этого можно с уверенностью заключить, что JTextPane является специализированной формой JEditorPane, которая поставляется с некоторыми дополнительными функциями.

JTextArea поставляется со специальными функциями; одно из них не позволяет ему обертывать текст всякий раз, когда текст помещается. Это фактически означает, что в случае, если текст помещен в него, он автоматически назначается левой стороне и идет таким образом, пока вы не нажмете enter.

С другой стороны, JTextPane поставляется с функцией обтекания текста. Это помогает создавать границы в текстовом поле. Когда письмо достигнет границы, оно автоматически начнет следующую строку, а не точку зрения JTextArea.

Чтобы заставить JTextArea работать так же, как JTextPane, было показано, что реализация переноса текста в JTextArea позволяет автоматическое предложение начинаться с новой строки, когда предыдущая строка достигает границы. Это одно из главных отличий. Чтобы сделать это возможным, JTextArea использует set setLineWrap (..) и setWrapStyleWord (..). Можно управлять способом, в котором выполняется перенос текста.

Другое отличие состоит в том, что JTextPane обладает возможностями стилизации слов / абзацев и позволяет встраивать изображения, которые выполняются в одном документе. Эта возможность отличается от возможностей JTextArea, которая не позволяет редактировать изображения в одном документе.

Было также показано, что JTextPane поддерживает редактирование введенного контента, функцию, недоступную в JTextArea, даже после того, как была введена функция деформирования. Среди возможностей редактирования, которые позволяет JTextPane, подчеркивается, выделение жирным шрифтом и окрашивание текста.

Ограничением, которое препятствует JTextPane быть предпочтительным выбором над JTextArea, является то, что JTextPane очень тяжела, когда дело доходит до использования компонента. Поэтому целесообразно использовать JTextArea, который использует функцию преобразования текста, если нет необходимости редактировать контент, подчеркивая его, делая его полужирным или раскрашивая его. Это связано с тем, что использование JTextPane и не использование какой-либо функции стилизации приводит к значительному замедлению пользовательского интерфейса. Это также приводит к ненужному распределению памяти из системы на JTextPane. Для хорошей легкой сборки, простой в системе, требующей минимального ввода, рекомендуется использовать JTextArea, так как было показано, что она хорошо работает на пользовательских интерфейсах, не требуя ресурсов.

Из-за огромной гибкости, которую предлагает JTextPane, и ресурсов, которые она требует от операционной системы, это означает, что требуется дополнительное программирование перед ее использованием. Отличная функция, которую предлагает JTextPane, недоступная в JTextArea, заключается в том, что она позволяет легко загружать панели редактора вместе с форматированным текстом, который поступает из URL-адреса. Это довольно важная функция, так как она позволяет отображать нередактируемую справочную информацию.

Резюме

JTextPane является производным от javax.swing.text.JTextComponent.

JTextArea не может преобразовать текст.

JTextPane поставляется с возможностью преобразования текста

JTextArea может преобразовать текст, используя setLineWrap (..) и setWrapStyleWord (..)

JTextPane - ресурс тяжелый, а JTextArea - ограничение ресурсов

Для более быстрой реализации JTextArea следует использовать

JTextPane следует использовать только тогда, когда требуется стилизация в проекте

JTextPane требует больше программирования по сравнению с использованием JTextArea

JTextPane позволяет встраивать изображение, в то время как JTextArea не позволяет встраивать изображения