2013-08-03 32 views
5

Làm cách nào để thay đổi chiều cao của NSMenuItem? Khi tôi thay đổi phông chữ của một menu, NSMenuItem sẽ tự động thay đổi kích thước để vừa với tiêu đề, không để lại dấu cách phía trên hoặc bên dưới tiêu đề. Nó trông rất chật chội.Chiều cao NSMenuItem?

Trông như thế này:

enter image description here

Muốn cho nó trông như thế này:

enter image description here

Tôi đã thử một triệu tinh chỉnh liên quan đến danh hiệu do các mục trình đơn, nhưng không có kết quả. Tôi cũng không muốn sử dụng thuộc tính chế độ xem của các mục menu vì tôi muốn giữ phần đánh dấu. Bất kỳ ý tưởng nào khác?

Chỉnh sửa: Đây là những gì tôi muốn (nhiều hơn hoặc ít hơn), nhưng dựa trên NSMenu, không làm lại nó từ đầu.

enter image description here

Trả lời

7

Bạn có thể thiết lập một hình ảnh rộng 1 pixel rỗng với chiều cao mong muốn:

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

[menuItem setImage:image]; 

Rõ ràng bạn kết thúc với danh hiệu đó được bù đắp 1 pixel ở bên phải, mặc dù điều đó có thể chấp nhận được nếu áp dụng thống nhất.

+0

Cảm ơn, nó hoạt động tốt. Tôi sẽ chấp nhận điều này như là câu trả lời trong một ngày trừ khi có điều gì đó tốt hơn. Tôi đoán giải pháp "tốt nhất" là tái triển khai NSMenu từ đầu, nhưng điều đó dường như không có giá trị. Tôi đã chỉnh sửa câu hỏi gốc để hiển thị hình ảnh của menu iTunes 11, điều này ít nhiều là những gì tôi đang làm. – danjonweb

+0

Đẹp bên ngoài hộp suy nghĩ xD – NSAddict

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