Как подключить кнопку к методу в Mac OS X - PullRequest
5 голосов
/ 24 сентября 2010

Я привык к программированию для iPhone. Там я бы подключил кнопку к действию, а затем метод, создав метод следующим образом: -(IBAction) DoStuff{…}. Затем я бы сделал розетку для кнопки, а затем и саму кнопку в Интерфейсном Разработчике. Затем я бы подключил кнопку к розетке, а затем подключил кнопку к действию, щелкнув по кружку рядом с Touch Up Inside, перетащив его в Владелец файла и выбрав мое действие.

Я новичок в программировании для Mac, поэтому я попытался перетащить из PerforClick нужный файл, но он не позволил мне установить соединение. Должен ли я сделать это программно или как? Как мне получить эту кнопку для запуска действия в моем коде?

Ответы [ 3 ]

4 голосов
/ 25 сентября 2010

Принципиальное отличие заключается в том, что элементы управления iOS могут иметь несколько действий для разных событий, но элементы управления Mac OS X имеют только одно основное действие (в некоторых случаях есть другие, которые можно настроить программно).

Когда вы щелкаете правой кнопкой мыши по кнопке на перо Mac, performClick: находится под Полученные действия ; это не событие. Единственная запись в Отправленные действия - это «селектор», единственное, что вы можете подключить к действию над другим объектом.

Поскольку существует только одно «отправленное событие», вы обычно просто перетаскиваете элемент управления или перетаскиваете вправо от элемента управления к цели и выбираете действие, а не нажатие элемента управления, выбирая событие и перетаскивая его. 1010 *

3 голосов
/ 24 сентября 2010

Он работает примерно так же, но в отличие от UIKit есть только одна подпись для действий:

- (IBAction)actionName:(id)sender;

Подробнее см. Связь с объектами и Цель / Действие в Интерфейсном Разработчике .

1 голос
/ 24 сентября 2010

Мне нравится Control-Click на кнопке, а затем перетащить на объект, который я хочу получить действие. Затем я выбираю метод возможных вариантов из всплывающего меню.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...