2016-03-18 16 views
1

次の問題があります。 私は2台のモニタを持ち、そのうちの1台(セカンダリ)のWebカメラからビデオを変換します。私は put_FullScreenMode()を使ってフルスクリーンモードで行います。MFC IVideoWindow put_FullScreenModeが正しく動作しません

正常に動作しますが、プライマリモニタの領域でマウスボタンをクリックすると、ウィンドウがビデオモードに切り替わります。 プライマリモニタでフルスクリーンモードを保存するにはどうすればよいですか?

最初は、動画を左に移動し(プライマリから二次モノに)、フルスクリーンモードを使用します。

if(monitors.GetCount() > 1) 
     gx.pVW->put_Left(primaryRect.right); 

     gx.pVW->put_FullScreenMode(OATRUE); 
     gx.pVW->put_Visible(OATRUE); 

ありがとうございました。

答えて

0

APIはフルスクリーン表示を効率的に処理する特定の「フルスクリーンレンダラー」フィルタを提供して以来、古いアプリケーションではFullScreenModeを利用していました。それ以来、ビデオアダプターは、提示されたビデオの伸張への道を見出し、フルスクリーンモードは不要になった。あなたが使用しているビデオレンダラのウィンドウモードは、もはやウィンドウレスモードに比べて推奨モードではありませんでした。

あなたのUI、ウィンドウ、フォーム、またはダイアログで、ウィンドウレスモードでレンダラーを使用する方がよいでしょう。ボーダレスウィンドウホスティングビデオレンダラを使用すると、実際に表示モードを変更せずにフルスクリーンモードを簡単に模倣できます。このようなウィンドウは通常のウィンドウのままであり、別のUIアクティビティ、例えばそのようなことは別のモニターで起こります。

VMRは、自身が自分のフィルターコンフィグプロパティページでフルスクリーンに行くの二つの方法を示しフィルタリング:

enter image description here

セットのフルスクリーンはそれをあなたが行うと述べた問題に苦しむ道を行います。もう1つの方法は、モニタの範囲まで伸ばしたフチ無しウィンドウを使用してフルスクリーンモードを実行する方法です。

も関連する議論を参照してください:

関連する問題