2010-07-19 2 views
0

나는 NSComboBox를 가지고 있으며 일반 NSTextField로 변환하는 쉬운 방법이 있는지 궁금합니다. NSCombBox가 NSTextField의 하위 클래스라는 점을 감안할 때,이 기능을 켜고 끌 수있는 쉬운 방법이 있다고 생각 하겠지만 알아낼 수는 없습니다.쉽게 NSComboBox를 NSTextField로 변환하기

답변

0

두 개의 별도 컨트롤입니다. 당신은 단지 다른 하나를 교환해야 할 것입니다. 디자인 타임에 Interface Builder에서이 작업을 수행하려는 경우 마음이 감당할 정도로 간단합니다. 코드에서이 작업을 수행하려는 경우 지나치게 어렵지 않습니다 (특히 오프 스크린보기와 같이 XIB에서 이미 컨트롤을 만들고 구성한 경우).

달성하려는 목표 (즉, 컨트롤을 바꾸고 싶은 이유)를 설명하는 데 도움이 될 수 있습니다. 목표에 대한 추가 정보없이 간결한 대답을하는 것은 어렵습니다.

+0

배열이나 문자열 형식 일 수있는 데이터가 있으므로 NSTextField 또는 NSComboBox를 만들어야하는지 결정해야했습니다. 기본적으로 IBOutlet은 NSTextField입니다. 기본적으로 필드 isKindOfClass : [NSString class]를 설정하는 데 사용한 데이터 객체를 확인해야했습니다. 그것은 NSString 경우 데이터를 설정합니다. 그렇지 않으면 NSTextField의 경계와 다른 중요한 매개 변수를 복사하고, superview에서 NSTextField를 제거하고, NSComboBox를 초기화하고, NSTextField에서 복사 한 매개 변수를 설정하고, 데이터를 설정하고 마지막으로 대상 및 동작을 설정합니다. – mac2017

+0

문자열이 하나 뿐인 경우에도 왜 항상 문자열 배열로 표시 할 수 없습니까? 이 경우 팝업 메뉴가 나타나지 않도록하는 것이 너무 어렵지 않을 것이라고 확신합니다. 당신은 그런 것을 고려 했습니까? –