2011-12-21 35 views
5

Xin vui lòng cho tôi một lời khuyên làm thế nào để thực hiện các loại nút tiết lộ như trên ảnh chụp màn hình của tôi - một tiết lộ "mũi tên xuống" nút hiển thị một menu trên nhấp chuột:nút Tiết lộ hiển thị một menu

What do I want

tôi đã thử hai cách tiếp cận, sử dụng NSPopupButtonNSButton với phong cách công khai và menu của nhãn hiệu hiển thị:

  • NSPopupButton giữ hiển thị văn bản giá trị mặc định và không thể thay đổi kích cỡ trong giao diện Builde r đến một kích thước hẹp.

    NSPopupButton

  • NSButton hiển thị một menu, nhưng nó rõ ràng là thất lạc tới điểm mà tôi bấm nút, không phải ở cạnh dưới. Tôi đang sử dụng đoạn mã sau:

    - (IBAction)handleShowMenu:(id)sender 
    { 
        [NSMenu popUpContextMenu:profileMenu 
            withEvent:[NSApp currentEvent] 
            forView:sender]; 
    } 
    

    NSButton with menu

Vì vậy, đúng cách để hiển thị một menu như vậy là gì?

Trả lời

3

Tôi đã quản lý nó! Thiết lập chính xác là sử dụng NSPopupButton với "" Không có mũi tên "và" Tiết lộ "kiểu bezel," Đẩy tạm thời trong "loại.

+0

Tỷ lệ cược. Tôi đã cố gắng đó là tốt nhưng nó dẫn đến một nút ít biên giới. "Đẩy Momentary" cũng khiến hình tam giác hướng về phía bên phải thay vì xuống. – omz

+0

Giải pháp của tôi rõ ràng là hoạt động trên Lion với XCode 4.2. Bạn đang sử dụng phiên bản OS và XCode nào? – iHunter

+0

Tương tự. Tôi vừa làm thử nghiệm ban đầu của tôi với phiên bản cũ của IB vì tôi thấy nó thuận tiện hơn một chút, nhưng tôi đã thử giải pháp của bạn trong Xcode 4.2 trên Lion. – omz

1

Thay đổi kiểu bezel của nút bật lên thành "Đã kết cấu" và mũi tên thành "Trung tâm" sẽ cung cấp cho bạn giao diện ảnh chụp màn hình đầu tiên của bạn. Nếu bạn không muốn tiêu đề của mục được chọn xuất hiện, bạn cũng cần đặt "Vị trí" thành "chỉ hình ảnh" (hình vuông màu trắng).

Chỉnh sửa: Tôi đã thử điều này trong IB 3 và chỉ mô phỏng giao diện. Dường như phong cách "Kết cấu" trông khác nhau trong Xcode 4. "Tròn Textured" là gần, nhưng nó không trung tâm tam giác theo chiều ngang.

+0

Thay đổi kiểu bezel thành "Kết cấu" thay đổi màu nút bật lên (ít nhất là trên Lion) thành xám hơn, đó không phải là những gì tôi muốn. – iHunter

+0

Cảm ơn sự giúp đỡ của bạn, tôi đã tìm thấy câu trả lời. – iHunter

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