Обновление
getCaret().setVisible()
, похоже, не имеет никакого эффекта, по крайней мере с L & F для Metal и Windows 7.
Вот два предложения, которые могут бытьдостаточно для вас, в зависимости от ваших окончательных требований:
Установите цвет каретки на тот же цвет, что и на фоне JTextField
, эффективно сделав его невидимым.
myJTextField.setCaretColor(myJTextField.getBackground());
Если вы хотите показать каретку позже (скажем, когда поле получает фокус), вы можете вернуться к исходному цвету (документация говорит, что пропуск null
сделает это), когдаВаш JTextField
получает фокус.
Установите частоту мигания на 0, чтобы, даже если курсор был виден, он не мигал.
myJTextField.getCaret().setBlinkRate(0);
Кажется, что вы хотите скрыть каретку (курсор |
, который указывает текущую позицию вставки текста).
Вы можете использовать JTextField.getCaret().setVisible(false);