Как запретить пользователю вводить в QLineEdit
что-либо кроме URL?
Ситуация: нужна форма (необязательно QLineEdit
, но я не нашёл специальной формы для ссылок), которая не даст пользователю ввести что-либо кроме ссылок. Видел формы, которые разрешают только ввод чисел, а не букв. Нужно что-то типа такого, только для ссылок. При этом при проверке не обязательно подключение к интернету. Знаю про класс QUrl
, но его метод isValid() пропускает и нерабочие URL почему-то.
Проверка по ходу ввода делается с помощью подклассов QValidator
, можно сделать свой на основе QUrl
, а можно просто взять QRegExpValidator
из коробки и регулярку из гугла с en-so*:
QLineEdit *leUrl= new QLineEdit(this);
QRegExp urlRx{"https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#?&//=]*)"};
leUrl->setValidator(QRegExpValidator(urlRx));
* Не забывая удвоить обратные слеши, дабы компилятор С++ сам не пытался их интерпретировать.
Нужно найти разницу между суммой всех цифр использованных для записи всех нечетных чисел от 1 до х и суммой всех цифр использованных для записи...
QT не может найти lineEditЯ пытаюсь забрать текст из lineEdit так: ui->lineEdit->text() Причём он не видит и не выводит lineEdit и даже когда я пытался вставить...