qt dialog 예제

일반적으로 모달 대화 상자의 결과 코드인 수락 또는 거부를 반환합니다. 탭 대화 상자 예제에서는 QTabWidget 클래스를 사용하여 탭 대화 상자를 구성하는 방법을 보여 주며 있습니다. finddialog.h에서 포함하고 QCheckBox, QLabel, QLineEdit 및 QPushButton에 대한 전달 선언을 사용하는 대신 포함시킬 수 있습니다. 그러나 다른 헤더 파일, 특히 큰 응용 프로그램에서 큰 헤더 파일을 포함하는 것은 일반적으로 좋지 않습니다. 이제 대화 상자가 완료되었습니다. 다음 단계는 editAdd() 슬롯을 코딩하여 기본 양식에서 사용하는 것입니다. 이 대화 상자가 exec()와 함께 표시되면 done()도 로컬 이벤트 루프가 완료되고 exec()가 r을 반환합니다. 개인 슬롯 enableFindButton (const QString &) 줄 편집기의 텍스트가 변경 될 때마다 호출 됩니다. 개인 슬롯 findClicked() 사용자가 찾기 단추를 클릭할 때 호출 됩니다. 사용자가 닫기(Close)를 클릭하면 대화 상자가 자체적으로 닫힙납니다. close() 슬롯은 QWidget에서 상속되며 기본 동작은 위젯을 삭제하지 않고 보기에서 숨기는 것입니다.

나중에 enableFindButton()에 대한 코드를 살펴보고 클릭() 슬롯을 찾습니다. 12줄에서는 setDefault(true)를 호출하여 찾기 단추를 대화 상자의 기본 단추로 만듭니다. 기본 버튼은 사용자가 Enter를 누르면 누르는 단추입니다. 13줄에서는 찾기 버튼을 비활성화합니다. 위젯을 사용하지 않도록 설정하면 일반적으로 회색으로 표시되며 사용자 상호 작용에 응답하지 않습니다. 사용자가 대화 상자에서 Esc 키를 누르면 QDialog::reject()가 호출됩니다. 이렇게 하면 창이 닫힙싸게 됩니다: close 이벤트를 무시할 수 없습니다. 확인 단추를 양식의 accept() 슬롯과 취소 단추에 연결합니다. (편집을 클릭| 연결을 클릭한 다음 새로 를 클릭합니다. 보낸 사람 “okPushButton”, “클릭()”으로 신호, 수신기를 “OptionsForm”으로 변경하고 슬롯을 “수락()”으로 변경합니다.

새로 만들기를 다시 클릭합니다. 보낸 사람 “취소푸시버튼”, “클릭()”으로 신호, 수신기를 “OptionsForm”으로 변경하고 슬롯을 “리젝트()”로 변경합니다. 확인을 클릭하여 연결 대화 상자를 닫습니다. 사용자가 편집을 클릭하면 | FindForm 대화 상자를 호출하려는 응용 프로그램에서 찾을 수 있습니다. 그리고 찾기 단추를 클릭할 때마다 현재 보기에 입력한 텍스트를 찾고, 색상이 있는 색상 다음의 색상부터 시작합니다. FindForm의 인스턴스를 하나만 만들고 필요에 따라 표시하고 숨길 수 있도록 포인터를 유지합니다. 이 예제에서는 위젯이 최상위 창으로 사용되지만 상위 위젯을 사용할 수 있도록 생성자도 정의합니다. 이렇게 하면 대화 상자를 응용 프로그램의 기본 창 위에 배치할 수 있습니다. 모달 대화 상자를 표시하는 가장 일반적인 방법은 exec() 함수를 호출하는 것입니다. 사용자가 대화 상자를 닫으면 exec()이 유용한 반환 값을 제공합니다.

일반적으로 대화 상자를 닫고 적절한 값을 반환하려면 기본 단추(예: OK)를 accept() 슬롯에 연결하고 취소 단추를 reject() 슬롯에 연결합니다. 또는 done() 슬롯을 수락 또는 거부됨으로 호출할 수 있습니다. 이제 colortool 응용 프로그램이 완료되었습니다. 예를 들어 모달 대화 상자는 동일한 응용 프로그램의 다른 표시 창에 대한 입력을 차단하는 대화 상자입니다. 사용자에게 파일 이름을 요청하거나 응용 프로그램 기본 설정을 설정하는 데 사용되는 대화 상자는 일반적으로 모달입니다. 대화 상자는 응용 프로그램 모달(기본값) 또는 창 모달일 수 있습니다. 사용자가 닫을 때까지 차단하여 대화 상자를 모달 대화 상자로 표시합니다.

Comments

comments