現在、ウィンドウサイズを変更して遊ぶゲームを作ろうとしています。
そこで SetWindowSize を使ってウィンドウサイズを変更しようとしていたのですが、この関数を使うと表示していた画像が伸縮?してしまいます。
(例えば640×480で表示してるときに480×640に変更すると表示されている画像が縦長になってしまいます)
表示してる画像に変化を与えずウィンドウサイズを変更することはできるでしょうか?
よろしくお願いします。
環境:win7 VC++ DxLIb使用
ウィンドウサイズの変更について
Re: ウィンドウサイズの変更について
DXライブラリを使用しているなら、SetGraphMode関数でウィンドウの解像度を変更できます。
↓リファレンス SetGraphMode
http://homepage2.nifty.com/natupaji/DxL ... .html#R4N1
↓リファレンス SetGraphMode
http://homepage2.nifty.com/natupaji/DxL ... .html#R4N1
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: ウィンドウサイズの変更について
SetGraphMode()は次のような問題があります。
本家の掲示板で尋ねたほうが良い問題かと思います。
なので安易には使えません。<注意>
この関数を実行するとロードしたすべてのグラフィックデータハンドル、 作成したフォントハンドルは自動的に削除され、SetDrawArea, SetDrawScreen, SetDrawMode, SetDrawBlendMode, SetDrawBright 等の描画に関係する設定を行う関数による設定も全て初期状態に戻りますので、 画面モード変更後 LoadGraph関数や CreateFontToHandle関数等で再度ハンドルを作成し直し、 描画可能領域、描画対象画面等の各種描画系の設定も再度行う必要があります。
本家の掲示板で尋ねたほうが良い問題かと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。