Измените первую букву слова в верхнем регистре в Java - PullRequest
0 голосов
/ 25 июня 2011

Я сохраняю элементы в JComboBox из текстового поля (ввода) при нажатии кнопки. Пользователь может вводить данные, начиная со строчной буквы, но я хочу изменить первую букву ввода на заглавную. Как мне этого добиться?

Ответы [ 3 ]

6 голосов
/ 25 июня 2011

Добавьте Document Filter в текстовое поле, которое преобразует первый символ в верхний регистр при его вводе в текстовое поле.

Конечно, вам также нужно обработать случай, когда первый символ удален.

Немного больше работы, чем ведение разговора, когда нажата кнопка «Сохранить», но в этом случае использование видит символ в верхнем регистре по мере его ввода и до того, как он будет сохранен в поле со списком.

Или, если текстовое поле имеет максимальный размер, вы можете использовать JFormattedTextField с маской. Что-то вроде:

MaskFormatter mf = new MaskFormatter("ULLLLLLLLL");
3 голосов
/ 25 июня 2011

Возьмите ввод.Создайте новую строку, состоящую из комбинации двух частей.Первая часть - это подстрока, состоящая только из первого символа, который вы затем вызываете toUpperCase (), а вторая часть - это подстрока, начинающаяся со второго символа.

Это должно выполнить то, что вы хотите.

2 голосов
/ 25 июня 2011

Библиотека Apache Commons Lang предлагает метод в StringUtils

public static String capitalize(String str)

это именно то, что вам нужно.

http://commons.apache.org/lang/api-2.6/index.html

У него также есть много других полезных методов.

Пожалуйста, не выполняйте это самостоятельно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...