2009-12-21 2 views

ответ

6

Предполагая, что ваш NSTableView привязан к NSArrayController (который является наиболее общим шаблоном при работе с Core Data), вы можете просто использовать NSArrayController «s remove: метода:

[theArrayController remove:self]; 

Это удалит все объекты, которые выбранных в контроллере массива.


В противном случае, если вы не привязан к NSArrayController, вам придется иметь дело с выбранным объектом непосредственно. Не зная, как вы заполняете свой TableView, я не могу показать весь необходимый код, но, вероятно, вы можете найти, какой из NSManagedObject выбран. После того как вы этот объект, это подпруга, чтобы удалить его:

NSManagedObjectContext *moc = the managed object context for your objects; 
NSManagedObject *selectedObject = the currently-selected object; 
[moc deleteObject:selectedObject]; 
1

Вы можете удалить строку с помощью метода tableView:setObjectValue:forTableColumn:row: из NSTableViewDataSource, а затем заставить таблицу обновляться с помощью метода reloadData из NSTableView.

+0

Будет ли удалить запись Ядра данных (BTW Я использую привязки) – nanochrome

+0

Doing как я сообщил, вы просто удалить объект из таблицы (один, который передается как 'setObjectValue:' в 'tableView: setObjectValue: forTableColumn: row:'. Затем вам нужно удалить объект. – kiamlaluno

+0

Извините, но я все еще не понимаю ...... Я новичок в какао/объекте c – nanochrome

Смежные вопросы