私はこの変な振る舞いをしています。私は、アプリケーションがいくつかの情報を待っているときにユーザーに表示するためのテキストパネルを使用しています。このパネルは、ユーザーが何かをクリックしないようにモーダルに表示されます。NSToolBar検証を強制するには?
ロードパネルが非表示になると、ツールバーのすべての項目が無効になり、validateToolbarItem
メソッドが呼び出されません。
私は、このようにパネルを示すよ:
- (void)showInWindow:(NSWindow *)mainWindow {
sheetWindow = [self window];
[self sheetWillShow];
[NSApp beginSheet:sheetWindow modalForWindow:mainWindow modalDelegate:nil didEndSelector:nil contextInfo:nil];
[NSApp runModalForWindow:sheetWindow];
[NSApp endSheet:sheetWindow];
[sheetWindow orderOut:self];
}
- (void)dismissModal {
[sheetWindow close];
[NSApp stopModal];
}
どのように私はこのケースで検証するためのツールバーを強制することができますか?コメントの後
編集:
私はすでに試してみました:
[[[NSApp mainWindow] toolbar] validateVisibleItems]
[[NSApp mainWindow] update];
[NSApp updateWindows];
[NSApp setWindowsNeedUpdate:YES];
すべて電話後dismissModal
。私は
Fromヘッダー:通常、このメソッドは呼び出さないでください。このメソッドは、可視の項目のそれぞれを の妥当性を検証する目的でウィンドウの更新時に呼び出されます。 –