2013-06-08 2 views
1

라인 편집을 제한하여 영숫자, 대시 및 밑줄 만 허용하도록하는 방법을 찾고 있습니다 (전체 줄에서 하나의 대시 및 밑줄 일 수 있음). 공백없이 나는 RegExp를보고 있었지만, RegExp가 정말로 느리다는 것을 설명하는 블로그 게시물을 발견했기 때문에이 옵션을 떠났다. 이제 라인 편집을 제한하는 가장 좋은 방법이 무엇인지 모르겠으므로 결과는 원하는대로 될 것입니다.Qt C++ : 줄 편집은 영숫자, 대시 및 밑줄 만 허용합니다.

나에게 무엇을 권하고 싶니?

+1

http://qt-project.org/doc/qt-4.8/qregexpvalidator.html –

+1

"RegExp의 속도가 매우 느립니다": 일반적으로 일반적으로 몇자인 행 수정 입력을 확인하고 있습니다. 인간에 의해 입력됩니다. 나는 QRegExp가 병목이 될지 의심 스럽다. –

답변

3

함수 QLineEdit :: setValidator 설명서 및 클래스 QValidator 설명서를 읽어야합니다. QValidator를 상속받은 자신의 validator 클래스를 정의하고 setValidator 함수를 사용하여 QLineEdit 객체에 객체 인스턴스를 전달할 수 있습니다.

관련 문제