2013-08-03 2 views
5

NSMenuItem의 높이를 변경하려면 어떻게해야합니까? 메뉴의 글꼴을 변경하면 NSMenuItem이 제목의 위 또는 아래에 공백을 두지 않고 제목에 맞게 자동으로 크기가 조정됩니다. 그것은 매우 갑갑 해 보인다.NSMenuItem 높이?

은 다음과 같습니다

enter image description here

는 다음과 같이 싶으십니까 :

enter image description here

내가 메뉴 항목의 기인 제목과 관련 백만 비틀기를 시도했습니다, 그러나 아무 소용이 없습니다. 또한 강조 표시를 유지하기 위해 메뉴 항목의 view 속성을 사용하고 싶지 않습니다. 다른 아이디어?

편집 : 이것은 (다소간) 좋겠지 만 NSMenu를 기반으로하며 다시 바닥부터 다시 실행하지 않습니다.

enter image description here

답변

7

당신은 원하는 높이로 하늘의 1 픽셀 넓은 이미지를 설정할 수 있습니다 : 그것은있을 수 있지만, 분명히

NSImage *image=[[NSImage alloc]initWithSize:NSMakeSize(1,30)]; 

[menuItem setImage:image]; 

당신이 오른쪽으로 1 개 픽셀을 오프셋 제목으로 끝낼를 균등하게 적용될 경우 수용 가능.

+0

감사

https://github.com/SquaredTiki/JGMenuWindow, 그것은 잘 작동. 나는 더 나은 것이 나오지 않는 한 이것을 하루의 답으로 받아 들일 것입니다. "최고의"솔루션은 처음부터 NSMenu를 다시 구현하는 것이 겠지만, 그만한 가치는없는 것 같습니다. 원래 질문을 편집하여 iTunes 11 메뉴의 그림을 보여주었습니다.이 메뉴는 어느 정도 진행되고 있습니다. – danjonweb

+0

상자 밖에서 멋진 생각 xD – NSAddict

0

하면 사물의 탄소 측면 JGMenuWindow을 확인하기보다는 NSWindow에 따라 NSMenu의 재 구현을 찾고 있다면 :

1
// you want height 100  
[menuItem setView:[[NSView alloc] initWithFrame:NSMakeRect(0, 0, 0, 100)]];