2010-12-20 10 views

答えて

5

は、あなたがフルスクリーンにしたいNSViewのに次のコードを追加:あなたはどのNSWindowの固有のコードを持っている場合

[view enterFullScreenMode:[NSScreen mainScreen] withOptions:nil];

それは、あなたが監視する必要がある唯一の事はまったく同じですね...

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSView_Class/Reference/NSView.html

+0

これは10.5以降でのみ使用できますが、非常に簡単です。 10.5をサポートしたい場合、ビューはウィンドウ内になければなりませんが、10.6だけを必要とする場合ではありません。 – ughoavgfhw

+1

@hauntsaninja、しかしフルスクリーンモードをエスケープする方法は?私のビューは上記の同じコードを使用し、 "esc"キーボードイベントに応答しませんでした。 – scorpiozj

0

これを試してみてください:

- (void)toggleMyViewFullScreen:(id)sender 
{ 
    if (myView.inFullScreenMode) { 
     [myView exitFullScreenModeWithOptions:nil]; 
    } else { 
     NSApplicationPresentationOptions options = 
      NSApplicationPresentationHideDock |  
      NSApplicationPresentationHideMenuBar; 

     [myView enterFullScreenMode:[NSScreen mainScreen] withOptions:@{ 
      NSFullScreenModeApplicationPresentationOptions : @(options) }]; 
                       }]; 
    } 
} 

ウィンドウメニューの全画面メニュー項目にこれを接続することができますが、メニュー項目があなたのtoggleMyViewFullScreen:に動作するように変更してください。または、プログラムで、またはアプリケーションの読み込み時にtoggleMyViewFullScreenを呼び出すことができます。

関連する問題