2012-07-03 37 views
6

Việc xây dựng trong pin, wi-fi, âm thanh, vv, Apple cung cấp các mặt hàng tình trạng, có thể được kéo đến vị trí bất kỳ trên menu bằng cách sử dụng cmd + nhấp và kéo:Cmd + bấm vào để di chuyển trạng thái chi tiết

Làm cách nào để hỗ trợ chức năng tương tự trong mục trạng thái của riêng tôi?

Trả lời

11

Có hai cách để tải các menu ở bên phải thanh trình đơn. Cách được hỗ trợ chính thức là tạo một NSStatusItem trong ứng dụng của bạn. Các cách khác là tạo một NSMenuExtra. Bạn đã nhận thấy một sự khác biệt: NSStatusItem các menu được cố định tại chỗ, trong khi các tính năng bổ sung của menu có thể được di chuyển xung quanh bằng cách kéo cmd.

Sự khác biệt lớn khác và lý do bổ sung cho menu bên thứ ba không được hỗ trợ chính thức, không giống như các mục trạng thái (chạy dưới dạng ứng dụng riêng biệt), tính năng bổ sung menu được tải vào không gian địa chỉ của quy trình SystemUIServer. Điều đó có nghĩa là nếu họ đi haywire và sụp đổ, họ có thể gỡ bỏ giao diện người dùng.

Bạn có thể xem Menu Extras được cài đặt trên hệ thống của mình tại /System/Library/CoreServices/Menu Extras. Nó vẫn có thể tạo ra của riêng bạn và có hệ điều hành tải chúng, nhưng bạn sẽ gặp phải vấn đề nếu bạn cố gắng gửi kết quả. Tốt hơn là truy cập bugreport.apple.com và cho họ biết rằng NSStatusItems phải có khả năng kéo được.

Wikipedia has more info on Menu Extras, bao gồm một số liên kết đến tutorial on building your own.

Các vấn đề liên quan