2016-10-30 1 views
0

Qt의 프로젝트에 멀티 qlineedit가 포함 된 여러 위젯이 있습니다. 사용자가 각 qlineedit을 클릭하면 두 번째 위젯이 열리고 텍스트 및 숫자를 입력하기 위해 단일 qlineedit이있는 키보드가 표시됩니다.
사용자가 확인 버튼을 클릭하면 단일 qlineedit의 텍스트가 클릭 한 텍스트 상자로 전달됩니다.
어떻게하면됩니까? 이 라인에서 이벤트 필터와모든 qlineedit에서 키보드 위젯을 열고 데이터를 다시 보내도록 onclick 신호를 설정하는 방법은 무엇입니까?

답변

1

이럴 대신 그 클래스를 사용하여, 나는 다음과 같이 할 것 :

1) QLineEdit 서브 클래스를 생성하고 focusInEvent을 재 구현하십시오 - 이것은 클릭뿐만 아니라 편집을 입력하는 다른 유형 (예 : 키보드를 통한)도 처리합니다. Constructctor에서는 'openEditor'신호를 위젯에서 사용자 정의 슬롯에 연결할 수 있습니다 (일반적으로 기본 위젯).

2) 사용자 지정 하위 클래스에 대한 편집 권한을 승격하십시오.

3) 사용자 정의 focusInEvent에서 신호 'openEditor'를 내보낼 수 있습니다. 여기서 QObject :: sender()를 사용하여 방출 된 신호를 편집 할 수 있습니다.

4) (, 키보드로 새로운 편집을 보여 보낸 사람 (편집 방출 편집기 개방의 텍스트 설정)가 필요합니다 당신이 어떤 예를 들어이 있습니까)의 답장을

+0

답장을 보내 주셔서 감사합니다. 내일 사무실에있는 PC에서 테스트해야합니다. – MHM

0

하나는 편집 또는 원하는 마우스 처리를 구현하는 서브 클래스를 생성하고 QLineEdit

+0

덕분에, 무엇을 할 수있는 슬롯을 구현? – MHM

관련 문제