Используя два разных размера шрифта в той же TextArea в Java Swing? [Дубликат]

Ну, простыми словами:

Вы пытаетесь получить доступ к объекту, который не создан или в настоящее время не находится в памяти.

Итак, как это решить:

  1. Отладить и отпустить отладчик ... Он сразу приведет вас к переменной, которая сломана ... Теперь ваша задача - просто исправить это. Используя новое ключевое слово в соответствующем месте.
  2. Если это вызвано некоторыми командами базы данных, потому что объект отсутствует, все, что вам нужно сделать, это выполнить нулевую проверку и обработать его:
    if (i == null) {
        // Handle this
    }
    
  3. Самый сложный. если GC уже собрал объект ... Это обычно происходит, если вы пытаетесь найти объект, используя строки ... То есть, найдя его по имени объекта, может случиться, что GC, возможно, уже очистил его ... Это трудно найти и станет проблемой. Лучшим способом решения этой проблемы является выполнение нулевых проверок везде, где это необходимо в процессе разработки. Это сэкономит вам много времени.

Поиск по имени означает, что некоторые фреймворки позволяют использовать FIndObjects с помощью строк, а код может выглядеть так: FindObject («ObjectName»);

0
задан BalusC 4 June 2011 в 16:15
поделиться

1 ответ

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

Но, если сказать, что если вы хотите отображать данные в форме таблицы, подумайте об использовании JTextArea, который имеет моноширинный шрифт, такой как Font.MONOSPACED, и используя String.format (...) для форматирования текста или даже лучше использовать JTable вместо JTextArea .

На боковой ноте рассмотрите переименование всех ваших переменных, чтобы их имена имели логический смысл. Нам сложно сделать головы или хвосты из метода с именем r () или массивом с именем t []. Сюда входят переменные GUI. Похоже, что вы используете NetBeans для создания своего графического интерфейса (и это еще одна рекомендация в другое время), и эта IDE легко позволит вам переименовать переменные GUI, и снова это то, что я настоятельно рекомендую. Через несколько недель, когда вы просмотрите этот код, будет гораздо больше смысла, если вы переименуете jTextField7 на clientLastNameField или некоторые из них.

4
ответ дан Hovercraft Full Of Eels 24 August 2018 в 17:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: