動画作成ツール「Crystel Engine」ブログ

動画作成ツール「Crystel Engine」の開発日誌です。良かったら「CE」と略して下さい。現在はMAD動画を作るためのツールとして稼動中。MADデビューしたい方は、ぜひどうぞ!ロマンはどこだ!?を胸に日々開発中

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

デュアルディスプレイに対応させるには?

デュアルディスプレイの話。

最近は、液晶も安くなってデュアルディスプレイ環境を個人でもやれるようになってきたのか・・・
残念ながら、私はそのような豪華な環境ではない

Crystel Engineは設定から画面サイズを指定した場合、画面以上のサイズを指定した場合、
自動的にチェックをして、それ以上入力できないようにしています。

が、デュアルディスプレイだと正確に取ってくれないらしい。というわけで調べた。

// プライマリディスプレイの画面解像度を入手するのがこれ。
    GetSystemMetrics(SM_CXSCREEN);
    GetSystemMetrics(SM_CYSCREEN);

// プライマリディスプレイのツールバーなどを省いた解像度を入手するのがこれ。
    GetSystemMetrics(SM_CXFULLSCREEN);
    GetSystemMetrics(SM_CYFULLSCREEN);

// 全てのモニターの画面解像度を入手するのがこれ。
    GetSystemMetrics(SM_CXVIRTUALSCREEN);
    GetSystemMetrics(SM_CYVIRTUALSCREEN);

というわけで、デュアルディスプレイ等の場合、VIRTUALSCREENで入手しないといけないらしい。

・・・・じゃあ、デュアルディスプレイでツールバーを省く場合は、どうするんだ?と考えたんだが・・・

    DWORD dwVrX= GetSystemMetrics(SM_CXVIRTUALSCREEN);
    DWORD dwVrY= GetSystemMetrics(SM_CYVIRTUALSCREEN);
    DWORD dwFullX= GetSystemMetrics(SM_CXFULLSCREEN);
    DWORD dwFullY= GetSystemMetrics(SM_CYFULLSCREEN);
    DWORD dwScX= GetSystemMetrics(SM_CXSCREEN);
    DWORD dwScY= GetSystemMetrics(SM_CYSCREEN);
    dwVrX = dwVrX - (dwScX - dwFullX);
    dwVrY = dwVrY - (dwScY - dwFullY);

これでいいのかな?

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。