2010-03-17 4 views
0

실제로 닫히기 전에 NSOpenPanel이 닫힐 때를 결정하려고합니다. 이 작업을 수행해야합니다. 다른 창 위에 펼쳐진 패널의 스크린 샷을 애니메이션 위에 올려 놓을 수 있습니다. 불행히도 액세스 할 수있는 것으로 보이는 모든 알림은 이미 창을 닫은 후에 시작됩니다. 이렇게하면 전환을 시작하기 전에 삐걱 거리는 소리가납니다.NSOpenPanel이 닫힐 때 결정

나는 시도했다 :
- 오픈 패널 NSWindow 표시 위임 방법 (분명히, NSWindow 표시의 대리자 메서드를 수행해도 문제가 해결되지 않는)
사용 - 패널을 모니터링 : userEnteredFilename가 : 확인 : (호출되지)
- 보여주는 대화 상자가있는 콜백 대화 상자가 사라진 후 콜백이 발생합니다.

답변

0

이 문제를 처리하는 또 다른 방법은 NSOpenPanel의 하위보기를 살펴보고 취소 버튼을 찾아 대상/동작으로 바꾸는 것입니다. 이게 내가 한 일이야.

1

컨트롤러를 공개 패널의 대리인으로 등록한 다음 -panel:isValidFilename: 대리자 메서드를 구현해야합니다. 이 메소드는 열린 대화 상자가 닫기 직전에 호출됩니다.

알림을 원하면 메서드에서 YES을 반환해야합니다. NO을 반환하면 열린 대화 상자가 닫히지 않도록 할 수 있습니다.

+0

취소 버튼을 클릭 할 때 panel : isValidFilename이 호출되지 않는다고 생각합니다. 도움을 주셔서 감사합니다 (늦었음). – Martin