2011-10-25 1 views
3

NSToolbar에 NSComboBox를 원합니다. 나는 IB와 Xcode 4.2를 통해 그것을한다. 콤보 박스를 툴바에 넣고 프로그램을 시작할 수 있습니다. 처음으로 - - 그리고 처음에만 나는 콤보 상자에 초점을 설정할 때 응용 프로그램이 시작, 나는 다음과 같은 예외를 얻을 :IB를 통한 NSToolbar의 NSComboBox가 예외를 throw합니다.

잠금 해제 초점 잘못된 뷰를 ((널)),

NSComboBox

예상

다음 번에 콤보 박스에서 포커스를 설정할 때 예외가 발생하지 않습니다.

NSTextField 또는 searchField에서 동일한 작업을 수행하는 경우 예외가 없습니다. 이전 버전의 Xcode/Objective-C에서 이런 문제가 있었음을 기억하지 못하기 때문에 버그 일 경우 궁금합니다.

답변

0

다음 해결 방법을 시도해 보셨습니까?

툴바에서 NSComboBox를 삭제하기 전에 툴바에 비어있는 NSView를 놓으십시오. 이렇게하면 빈보기가있는 툴바 항목이 만들어집니다. 그런 다음 방금 만든 툴바 항목 안에 NSView 안에 NSComboBox를 놓습니다.

나는 비슷한 문제가 있었고 이것은 나를 위해 일했습니다.

0

동일한 문제가있었습니다. 콤보 상자의 동작을 선택 만 가능하도록 변경하면이 문제를 해결할 수 있습니다.

운 좋게도 편집 할 수있는 콤보 상자가 필요하지 않았습니다.

1

동일한 문제가 있습니다. 테스트 필드를 편집 할 수 없도록 설정하는 것은 나를위한 선택 사항이 아니며보기 내부의 상자로 작업 할 수 없습니다.

문제가 "포커스"에 연결되어있는 것처럼 보였으므로 인터페이스 작성기로 이동하여 NSComboBox의 포커스 링을 "없음"으로 설정했습니다. 이 문제가 해결되었습니다.

프로그래밍 방식으로 -setFocusRingType:NSFocusRingTypeNone을 사용하여 프로그래밍 할 수 있습니다.

0

동일한 문제가 있으며 NSComboBox 내부에 NSPanel이 있습니다. IB에서 포커스 링을 "기본"에서 "없음"으로 변경했습니다. 이 문제가 해결되었습니다.

여기에 배경이 조금 있습니다. 여러 변경 사항이있을 때까지 내 코드가 잘 돌아갔습니다. Xcode 4.2 (Snow Leopard)에서 4.3 (Lion)으로 변환 한 후에 문제가 발생했습니다. 또한이 전환에는 GC에서 ARC 로의 전환이 포함되었습니다.