2011-10-24 14 views
54

Tôi có ứng dụng Cocoa có NSWindowController kiểm soát một số NSWindow với số NSComboBox trong đó. Không có gì đặc biệt, và nó hoạt động tốt cho đến khi nâng cấp lên OS X 10.7.2. Bây giờ tôi nhận được ngoại lệ sau, chỉ xảy ra một lần, khi cửa sổ của bộ điều khiển cửa sổ tải. (Vì bộ điều khiển cửa sổ trong ứng dụng của tôi vẫn được tải, nó chỉ xảy ra một lần cho mỗi lần khởi chạy ứng dụng.) Sau đó lấy nét và lấy nét hộp tổ hợp sẽ không kích hoạt nó.Mở khóa Lấy nét ở chế độ xem sai ((null)) trong OS X 10.7.2

Bất kỳ ai cũng biết liệu có điều gì đó đã thay đổi trong 10.7.2 hay không và nếu có cách giải quyết?

(Điều này đang xảy ra với Xcode 4.2.)

2011-10-24 11:30:21.649 MyApp[7934:707] Unlocking Focus on wrong view ((null)), expected <NSComboBox: 0x40083d6e0> 
2011-10-24 11:30:21.653 MyApp[7934:707] (
    0 CoreFoundation 0x00007fff8412d286 __exceptionPreprocess + 198 
    1 libobjc.A.dylib 0x00007fff88cdad5e objc_exception_throw + 43 
    2 CoreFoundation 0x00007fff8412d0ba +[NSException raise:format:arguments:] + 106 
    3 CoreFoundation 0x00007fff8412d044 +[NSException raise:format:] + 116 
    4 AppKit   0x00007fff8c76c1d5 -[NSFocusStack unfocusView:] + 194 
    5 AppKit   0x00007fff8c7e838e +[_NSAutomaticFocusRing showForView:] + 2545 
    6 AppKit   0x00007fff8cdbb4d1 __postActiveFirstResponderChanged_block_invoke_1 + 32 
    7 CoreFoundation 0x00007fff840ecf37 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 
    8 CoreFoundation 0x00007fff840ece96 __CFRunLoopDoObservers + 374 
    9 CoreFoundation 0x00007fff840c2159 __CFRunLoopRun + 825 
    10 CoreFoundation 0x00007fff840c1ae6 CFRunLoopRunSpecific + 230 
    11 HIToolbox   0x00007fff8c0d73d3 RunCurrentEventLoopInMode + 277 
    12 HIToolbox   0x00007fff8c0de58f ReceiveNextEventCommon + 181 
    13 HIToolbox   0x00007fff8c0de4ca BlockUntilNextEventMatchingListInMode + 62 
    14 AppKit   0x00007fff8c71e3f1 _DPSNextEvent + 659 
    15 AppKit   0x00007fff8c71dcf5 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135 
    16 AppKit   0x00007fff8c71a62d -[NSApplication run] + 470 
    17 AppKit   0x00007fff8c99980c NSApplicationMain + 867 
    18 MyApp    0x0000000100001682 main + 34 
    19 MyApp    0x0000000100001654 start + 52 
) 
+3

Dường như là lỗi trong bản phát hành mới. –

+0

Một trong hai câu trả lời có hoạt động không? Nếu có, hãy chấp nhận điều đó. – 11684

Trả lời

0

Bạn có thể thử gọi lệnh này trên NSComboBox: setFocusRingType: NSFocusRingTypeNone Điều đó sẽ chữa được vấn đề, mặc dù nó không giải thích sự khác biệt giữa hai phát hành.