Щелчок по нажатию клавиши "Control" не изменяет выбор в IKImageBrowserView, щелчок правой кнопкой мыши или щелчок двумя пальцами
Я добавил контекстное меню в IKImageBrowserView
,
Когда пользователь щелкает правой кнопкой мыши (мышь) или двумя пальцами (трекпад) изображение в IKImageBrowserView
, выбор изменится на это изображение, и появится контекстное меню.
Когда пользователь нажимает кнопку управления (мышь или трекпад), выбор не изменяется, и появляется контекстное меню.
Поскольку контекстное меню относится к выбранному изображению, я предпочитаю, чтобы выбор изменялся при вызове контекстного меню.
- Могу ли я сделать
IKImageBrowserView
изменить выбор также по нажатию клавиши управления (мышь и трекпад)? - Могу ли я прикрепить контекстное меню не к
IKImageBrowserView
но для одного элемента / изображенияIKImageBrowserView
?
1 ответ
Решение
Если вы сделаете подкласс IKImageBrowserView и переопределите menuForEvent:
Вы можете сделать это:
- (NSMenu *)menuForEvent:(NSEvent *)event {
NSUInteger idx = [self indexOfItemAtPoint:[self convertPoint:[event locationInWindow] fromView:nil]];
if (idx == NSNotFound) {return nil;}
if (![self.selectionIndexes containsIndex:idx]) {
[self setSelectionIndexes:[NSIndexSet indexSetWithIndex:idx] byExtendingSelection:NO];
}
return self.menu;
}