2013-10-18 5 views
0

IBWindow에 NSWindowController 하위 클래스가 초기화 될 때 (정상적으로) NSWindow에 압축을 푼 IB가있는 NIB를 사용하고 있습니다. [NSWindowController * window]는 컨트롤러의 윈도우를 제공합니다.(Mac) NSWindowController의 창을 NSWindow의 서브 클래스로 변경

이제 윈도우 컨트롤러의 윈도우를 서브 클래스로 만드는 다른 클래스로 만들고 싶습니다. 특히, 그 중 하나의 메소드 sendEvent를 대체하려고합니다. 이것은 내가 생각했던하지 않는 것이, 작동하지 않습니다

self.window = ((WebViewEventKillingWindow*) self.window); 

WebViewEventKillingWindow이 (여기 Disable a WebKit WebView 발견 밥 덕분에) 사용자와의 상호 작용을 해제하는 서브 클래스입니다. 나는 이것이 다른 접근법 없이도 가능하다는 것을 의심하고있다. 그러나 나는 이것에 상당히 새로운 것이다.

답변

1

인터페이스 빌더에서 창을 선택하고 속성 검사기가 열려 있는지 확인하십시오.

enter image description here

+0

완벽한 : 거기에 NSWindow 표시의 sublass의 이름을 입력 -

해당 패널의 첫 번째 옵션은 "사용자 정의 클래스"입니다. 이 기능에 대해 알고 있었지만이 경우이 기능을 사용하지는 않았습니다. 내가해야만했던 또 다른 일은 디폴트 윈도우 콘센트가 NSWindow이기 때문에 컨트롤러를 새로운 콘센트 (약한 참조)에 연결하는 것입니다. – sudo

+0

하위 클래스라는 사실을 알고 있기 때문에 액세스 할 때 기본 콘센트에 캐스트하면됩니다. – tarmes