2010-06-21 3 views
2

У меня действительно странная проблема. Я пытаюсь поместить NSPredicateEditor в свой интерфейс, используя IB, и когда я создаю приложение, он просто появляется как пустой серый прямоугольник. Это без моего применения ANY CHANGES WHATSOEVER к значениям по умолчанию, в том числе без изменения шаблонов по умолчанию. Что может быть?NSPredicateEditor просто не появится

ответ

5

NSPredicateEditor работает лучше всего, когда вы привязываете его к некоторому свойству (например, фильтру фильтра NSArrayController).

Шаблон, который вы настроили в IB, позволяет вам определять ограничения правил (например, позволяя пользователю выбирать «имя» или «фамилия»), но не определить, что появляется, когда контроль «живой».

Чтобы изменить «пустой» редактор (предикат фильтра контроллера массива или иначе), подключите действие кнопки или элемента меню к действию редактора -addRow:. Во время выполнения щелчок по нему добавит начальное «правило» (следуя ограничениям, указанным в шаблоне IB). Вы можете даже проверить это в самой IB.

+2

+1 ответ: «вам нужно вызвать« addRow: '», но другая информация тоже полезна. :) –

+0

Я как бы сочувствую, так как сразу понял источник беспорядка - я сам прошел через это, сначала изучив контроль. :-) Это было двоякое: а) почему этот «предикат по умолчанию» ведет себя правильно и б) почему он уходит во время выполнения? –

+0

согласовано; Я потратил хороший месяц или так понял, как работает NSPredicateEditor; Это не очень тщательно документированный контроль. –

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