2010-06-16 3 views
0

Название вопроса может быть немного расплывчатым. Я постараюсь объяснить так хорошо, как могу (также отметить, что я новичок в программировании какао, поэтому оправдываю любые ошибки :)).Какао: как подключить кнопку к виду?

У меня есть VIEW, который расширяет NSView, где я хотел бы нарисовать некоторые изображения. Я хочу, чтобы изображения загружались из некоторых файлов на диске, когда я нажимаю кнопку.

Мне удалось выполнить всю загрузку в NSMutableArray. Моя проблема в том, как настроить вещи: - Мне нужен NSMutableArray с изображениями (путями), которые будут доступны для функции загрузки (поэтому я поместил ее в контроллер и назначил действие кнопке в пользовательском интерфейсе). но в этом случае, как я могу получить его в функции drawRect моего пользовательского класса вида?

  • Если я ставлю его членом своего пользовательского класса просмотра, я не знаю, как связать его с кнопкой, так что при нажатии кнопки массив будет заполнен дорожками изображений.

Я предполагаю, что я немного смущен, так как im new для программирования osx, о том, как эти вещи подключаются.

Надеюсь, кто-то может немного очистить воздух. Благодарю.

ответ

0

Изображение должно иметь свойство хранить массив изображений, а контроллер должен установить это свойство в свой массив изображений. (Вид изображения должны, конечно, сделать свою собственную неполную копию массива.)

изображения (пути)

Предполагая, что вы имеете в виду имена путей, изображения не являются путями, а также пути не являются изображениями , Контроллер должен загрузить изображения и передать изображения в представление. Представление не должно волновать, откуда взялись изображения.

+0

Спасибо за информацию, и да, пути - это то, что я имею в виду (точнее, я просто читаю файлы из папки и сохраняю их в массиве). Но как передать изображения с контроллера на представление? Скажем, у меня есть: @interface MyView: NSView { NSMutableArray * images; ... } ... @end и контроллер: @interface MyController: NSObject { NSMutableArray * imagesInController; } @end Как установить массив изображений из контроллера? – eemerge

+0

Как я уже сказал, представление должно иметь свойство. Контроллер просто отправил бы представление сообщение, чтобы установить это свойство. См. Документ Language Objective-C Programming Language: http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProperties.html. –

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