В моей программе я могу определить, был ли mouseclick создан в определенном NSRect. Как я могу открыть новый NSWindow, щелкнув этот NSRect?Откройте NSWindow, нажав NSRect в какао
0
A
ответ
2
Если вы хотите отобразить существующее окно (которое вы создали с помощью Interface Builder), вы просто вызываете makeKeyAndOrderFront на свой оконный объект.
Если вы хотите создать новое окно программно, вы найдете ответ here.
0
Для обработки событий вы должны реализовать соответствующие методы NSResponder в подклассе NSView или NSViewController. Например, вы можете реализовать mouseDown:
и -mouseUp:
для обработки щелчков мышью (довольно упрощенно):
- (void) mouseDown: (NSEvent *) event
{
if ([event type] != NSLeftMouseDown)
{
// not the left button, let other things handle it
[super mouseDown: event];
return;
}
NSPoint location = [self convertPoint: [event locationInWindow] fromView: nil];
if (!NSPointInRect(location, self.theRect))
{
[super mouseDown: event];
return;
}
self.hasMouseDown = YES;
}
- (void) mouseUp: (NSEvent *) event
{
if ((!self.hasMouseDown) || ([event type] != NSLeftMouseUp))
{
[super mouseUp: event];
return;
}
NSPoint location = [self convertPoint: [event locationInWindow] fromView: nil];
if (!NSPointInRect(location, self.theRect))
{
[super mouseDown: event];
return;
}
self.hasMouseDown = NO;
// mouse went down and up within the target rect, so you can do stuff now
}
Смежные вопросы
- 1. Какао: получить относительное положение NSWindow
- 2. Какао - анимация NSWindow при отображении?
- 3. Класс какао, не отображающий данные в NSWindow
- 4. Откройте меню «Параметры», нажав кнопку
- 5. Откройте меню «Выбрать», нажав кнопку
- 6. Какао-шоу NSWindow на конкретном экране
- 7. Система координат сальто объектива NSWindow-c/какао
- 8. Какао NSWindow с 2 панелями инструментов
- 9. Минимизация/миниатюризация какао NSWindow без заголовка
- 10. Размер NSRect для заполнения экрана
- 11. Откройте контекстное меню, нажав на опции меню.
- 12. Нажав на значок, откройте всплывающую текстовую область
- 13. Нажав на кнопку html откройте ios Camera
- 14. Откройте новое действие, нажав кнопку, используя on'Click
- 15. NSWindow positioning
- 16. Нижняя панель в NSWindow
- 17. Что такое событие в какао для NSWindow, которое сообщает, что NSWindow теперь отображается после первого запуска?
- 18. дыры в NSRect
- 19. NSWindow Исчезает
- 20. Создание массива значений NSRect в методе mousedown
- 21. Rezize NSWindow сверху
- 22. Перевернув окно в какао
- 23. Какао, Фликер с анимацией при наложении NSWindow на QTMovieView
- 24. Как создать прозрачный и не прямоугольный NSWindow с какао?
- 25. Окно исчезает после создания на какао
- 26. Откройте Apple Maps, нажав на WKInterfaceMap в динамическом уведомлении
- 27. Удалить простыню NSWindow
- 28. NSRect координаты ссылок в WebView
- 29. Работа с NSRect в питона
- 30. NSRect закругленные углы