내 Mac 앱 내에서 메일 스타일 인터페이스를 만들기 위해 두 개의 NSSplitViews를 설정했습니다. 첫 번째 ScrollView는 세로 구분 기호를 만들고 두 번째는 첫 번째로 중첩되어 가로를 만듭니다 분리 기호). 인터페이스를 설명하기 위해, 나는 다음과 같은 다이어그램 만들었습니다NSSplitView 내 잘못된 NSTableView 프레임
alt text http://img714.imageshack.us/img714/8153/yayaj.png
나 '문제 :
alt text http://img96.imageshack.us/img96/1091/setupn.png
추가 설정을 설명하기를, 여기 내 뷰 계층의 주석 스냅입니다 두 개의 NSTableView가 NSSplitView의 B 부분과 C 내에서 호스팅되는 프레임을 잡으려고 할 때 상대 좌표를받습니다. 여기
NSRect aTableViewFrame = [aTableView frame];
NSRect bTableViewFrame = [bTableView frame];
NSLog(@"%@ %@", NSStringFromRect(aTableViewFrame), NSStringFromRect(aTableViewFrame));
내가 보는 출력 것 : 여기 내가 사용하고 코드의
{{0, 0}, {760, 143}} {{0, 0}, {760, 392}}
반환 된 NSRect 값에서 볼 수 있듯이, 나는 NSTableView는의 정확한 폭과 높이를 제공하고 있습니다 ,하지만 내가 실제로 한 것은 부모 NSSplitView에 대한 상대적인 위치입니다. 물론, (다수의) IBOutlets를 사용하고 올바른 rect 값을 직접 구성 할 수는 있지만, 실제로 찾고있는 것은 부모 NSSplitView 또는 포함하는 Window에 상대적으로 NSTableViews의 프레임을 잡는 쉬운 방법입니다.
+1 'convertRect : ...'메소드가이 작업을 수행하는 적절한 방법입니다. –