drawRect не вызывается при необходимости в OS X - PullRequest
0 голосов
/ 24 июля 2011

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

Когда я помещаю начальную и графическую графики, которые должны быть нарисованы позже, в первоначальном вызове drawRect, все отрисовывается без проблем.Однако drawRect не вызывается, когда пользователь нажимает кнопку во втором окне.Я пробовал awakeFromNib, setNeedsDisplay, needsDisplay и display, но ничего из того, что я нашел, пока не получает окно NSView для вызова drawRect.

Я довольно новичок в программировании OS X и ценю любые подсказки, которые вы можете броситьМой путь.

Спасибо, Том Джеффрис

1 Ответ

0 голосов
/ 25 октября 2011

Вы должны отделить нажатие кнопки в классе контроллера, и этот контроллер должен вызвать setNeedsDisplay для объекта представления.Не говорите, смотрите само setNeedsDisplay.

...