Я ищу способ ограничить редактирование строки, чтобы принимать только буквенно-цифровые символы, тире и подчеркивание (во всей строке может быть только один тире и одно подчеркивание), без пробелов. Я смотрел на RegExp, но затем я оставил эту опцию, потому что я нашел сообщение в блоге, которое объясняет, что RegExp действительно медленный. Теперь я не знаю, как лучше ограничить редактирование строки, поэтому вывод будет таким, как я хочу.
Что вы мне порекомендуете?
Вы должны прочитать документацию по функции QLineEdit :: setValidator и документацию по классу QValidator. Вы можете определить свой собственный класс валидатора (который наследует QValidator) и передать его экземпляр объекта в объект QLineEdit (используя функцию setValidator).
Других решений пока нет …