Как обновить NSMenu, пока оно открыто?

У меня есть NSMenu с динамически добавляемыми NSMenuItems. NSMenu не обновляется должным образом, пока он остается открытым. Я вызываю метод обновления NSMenu в NSEventTrackingRunLoopModes.

Я реализовал следующие методы для обновления NSMenu.

- (void)menuNeedsUpdate:(NSMenu *)menu {
for (NSInteger index = 0; index < count; index++)
    [self menu:menu updateItem:[menu itemAtIndex:index] 
                       atIndex:index 
                  shouldCancel:NO];
}

- (BOOL)menu:(NSMenu *)menu updateItem:(NSMenuItem *)item atIndex:(NSInteger)index shouldCancel:(BOOL)shouldCancel`

- (NSInteger)numberOfItemsInMenu:(NSMenu *)menu
6
задан Vinpai 13 April 2012 в 07:13
поделиться