kCGErrorFailure при выполнении перетаскивания в NSView - PullRequest
2 голосов
/ 23 июля 2010

Я создал простое приложение для перетаскивания, в котором я иногда получаю сообщение об исключении, отображаемое в консоли отладчика:

kCGErrorRangeCheck: CGSNewWindowWithOpaqueShape: невозможно создать окно

kCGErrorFailure: Установите точку останова @ CGErrorBreakpoint (), чтобы перехватывать ошибки, когда они регистрируются.

kCGErrorIllegalArgument: CGSMoveWindow: недопустимое окно 0x0

kCGErrorIllegalArgument: CGSOrderWindowList * 101l * Window2 101LGRist

kCGErrorIllegalArgument: CGSGetWindowBounds: окно NULL

kCGErrorIllegalArgument: CGSMoveWindow: недопустимое окно 0x0

kCGErrorIllegalArgument: окно 101G * * * * * 10 * CG * Класс: Окно 10G * Класс: Окно 10G * Класс: Окно * CGWG * Класс: Окно 10G * Класс: Класс: Окно 10: Класс: Окно * Класс: Окно 10: Класс: Окно * Класс: Окно 10: Класс: Окно * Класс: Класс: Окно 10: Класс: Окно * Класс: Класс: Окно 10: Класс: Окно * Класс: Класс: Окно 10: Класс: Окно * Класс: Окно 10: Класс: Окно * Класс: Окно 10: Класс: Окно 10: Класс: Окно: Класс: Окно 10: Окно * Класс: Окно 10: Класс: Окно: Класс: Окно: Окно1022 * Может кто-нибудь подсказать мне, почему это происходит и как я могу решить это?

Также кто-нибудь может подсказать, как установить точку останова для @CGErrorBreakpoint (), чтобы я мог отлаживать и отслеживать ее причину?

Код в concludeDragOperation:

NSPoint dropLocation = [sender draggedImageLocation];
id dragSource = [sender draggingSource];
NSPasteboard *pb = [sender draggingPasteboard];
NSData *draggedData = [pb dataForType:IconDragDataType];
id unarchievedObject = [NSKeyedUnarchiver unarchiveObjectWithData:draggedData];
[unarchievedObject setFrameOrigin:dropLocation];

Спасибо,

Miraaj

1 Ответ

2 голосов
/ 23 июля 2010

Чтобы установить точку останова в CGErrorBreakpoint, откройте окно точек останова (command-option-B), дважды щелкните строку с надписью «Двойной щелчок для символа» и введите CGErrorBreakpoint в текстовое поле.

...