Нужно в форму LineEdit ввести текст, который обязательно должен начинаться с заглавной буквы.
Каким образом можно записать проверку (на регистр первой буквы), перевести в заглавный регистр (есть ф-я toapper(), но она не работает с классом QString) и в "автоматическом" режиме заменить самую первую букву формы LineEdit на заглавную?
Также не совсем понятно, какой сигнал нужно выбирать при переходе к слоту ( пробовал editingFinished() ):
Я пытался сделать перевод в верхний регистр таким образом:
QString s[50] = ui -> lineEdit -> text();
QString str;
s[0] = str;
str = str.toUpper();
Но как дальше присвоить значение str форме LineEdit не совсем понял (да и подход, наверно, неправильный).
Установите валидатор при помощи setValidator, в качестве валидатора можно использовать свой класс-наследник QValidator (он довольно просто создаётся), у него можно переопределить метод fixup, который исправит пользовательский ввод. Или можно просто использовать регулярное выражение при помощи QRegExpValidator, но тогда не получится исправлять ввод автоматически.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости