2012-03-15 4 views
0

코코아 응용 프로그램을 만들고 NSWindowController가있는 환경 설정 창을로드하고 있습니다. 사용자가의 환경 설정 버튼을 선택하고 기본 설정 창 I 응용 프로그램이 백그라운드에서 응용 프로그램으로 돌아 가기 전에 그들이 새로 열린 창 컨트롤러와 함께 무엇을하고 있는지를 완료하도록 사용자에게 강제 할 NSWindowController Subclass로 강제 제어 할 수 있습니까?

를 엽니 다

.

백그라운드에서 무슨 일이 일어나고 사용자가 포 그라운드와의 상호 작용을 완료하도록 강제 할 수 있습니까?

Thakns

+0

원하는 것은 모달 창이라고합니다. 가능하면 피해야합니다. 왜 이걸하고 싶어? 원하는 것을 성취 할 수있는 더 좋은 방법이있을 수 있습니다. –

+0

현재 HUD 창이 내 응용 프로그램을 오버레이하게하는 기본 설정 단추가 있기 때문에 사용자는 백그라운드에서 tableview의 글꼴 크기를 변경할 수 있습니다. 문제는 사용자가 prefs 창에서 글꼴 크기를 변경할 수있는 동안 여전히 tableview의 텍스트 필드를 편집 할 수 있다는 것입니다. 이로 인해 NSTableView 행에 오류가 발생합니다. –

+0

그래서 효과적으로 HUD 창이 표시 될 때 응용 프로그램을 사용하지 않으려 고합니다. –

답변

1

는 아마도이 작품? HUD의 윈도우의 서브 클래스를 생성하고

- (BOOL)resignFirstResponder { 
    if (userMayLeave) return YES; 
    return NO; 
} 
0

당신은이를 달성하고 모달로 창을 표시하려면 다음과 같은 방법을 사용할 수 있습니다 구현 :

[[NSApplication sharedApplication] runModalForWindow:aWindow]; 

그런 다음 다음 방법 중 하나를 사용합니다 귀하의 모달 창을 닫으려면 :

관련 문제