4
:언제 Q_Property 알림 신호가 호출됩니까? 이것으로
Q_PROPERTY(QString datastring READ showdata() NOTIFY datastringChanged)
는 QML 측 datastring
속성에 새로운 것을 할당 할 때 신호를 발신하는 목적 datastringChanged
신호, 또는 C++ 측은 QML에게 통지해야 할 경우 발광을 위해 인 정보가 업데이트되면 showdata()
을 다시 확인해야합니까?
내가 쓸 수 있도록 한 경우, 해당 건물이 QML 측에서 뭔가를 할당하는 경우 요소는 여전히'onDatastringChanged' 신호를 인식 QML해야합니까? 아니면 NOTIFY로 지정한 신호와 다른 신호입니까? – johnbakers
예, 가능합니다. 'WRITE' 메서드 내에서 그 신호를 내보내는 것을 기억하면됩니다. 그럼 f.i. 값이 변경되면 모든 바인딩이 자동으로 재평가됩니다. QML에서 어떤 종류의 객체 생성이 가능하다면 QML에서 일반 onDatastringChanged 핸들러를 사용할 수 있습니다. 평범한 QObject 서브 클래스를 QML에 노출하는 경우'Connections' 요소를'onDatastringChanged' 핸들러와 함께 다시 사용할 수 있습니다. – peppe
QML 쪽에서 속성을 정의하면 자동으로 "on"이 앞에 붙은 속성과 동일한 이름의 신호가 첨부됩니다. 그러나 C++ 측에 속성을 정의하는 경우 명명 규칙이 적용된 자동 신호가 없습니다. 맞습니까? Q_PROPERTY 매크로에서 지정한 신호의 이름을 따릅니다. 맞습니까? – johnbakers