2015-01-05 13 views
-2

Qt4에서 신호와 슬롯을 만들려고하는데 Qt를 처음 접했습니다. 내가 Qt5에서 이해 한 바로는 자동으로 만들어졌으며 Qt4에서는 그렇지 않습니다. 사용자가 UI의 to에있는 메뉴 모음에서 옵션을 클릭 할 때 액션을 만들려고합니다. = 화면 하단에 "Sender"옵션이있는 Signal/Slot 편집기가 있음을 알 수 있습니다. "신호", "수신기"및 "슬롯". 나는이 기능을 어떻게 사용하는지 완전히 모르겠습니다. 어떤 도움을 주셔서 감사합니다.Qt4의 신호와 슬롯

+3

[Qt4의 신호 및 슬롯에 대한 설명서를 읽었습니까?] (http://qt-project.org/doc/qt-4.8/signalsandslots.html) – Bowdzone

답변

2

은 기본적으로 당신은 당신의 신호와 슬롯

connect(ui->button1, SIGNAL(clicked()), this, SLOT(yourSlot())); 

를 연결해야하고이 링크에서 신호와 슬롯에 대한 좋은 사례가 : signals and slots in qt.

0

오해가있는 것 같습니다.

Qt 5의 차이점은 연결을 만들기 위해 새로운 구문을 제공한다는 것입니다.

직접 연결, 대기열 지정 등의 연결 유형을 지정하지 않으면 연결은 자동입니다. 기본값은 자동이며 Qt가 개체의 스레드 소유권을 확인하고 적절한 연결 유형을 선택하게합니다.

연결은 코드에서 명시 적으로 만들거나 UI 편집기를 사용하여 만들어야하며, 후자는 어떤 경우에는 일부 입력을 절약 할 수 있지만 일반적으로 대부분의 연결은 코드에서 명시 적이므로 UI 편집기가 몇 가지 경우에만 당신을 도울 수 있기 때문에 당신이 그것을하는 방법을 배우십시오. 나는 실제로 UI 에디터를 연결에 사용하지 않았고 한두 해 전에 시도했지만 UI 요소와 신호 및 위젯의 슬롯 만 연결할 수 있다고 생각합니다.

신호와 슬롯 연결은 단지 UI 일뿐만 아니라 Qt의 핵심 원칙이며 UI는 많은 용도 중 하나입니다.