ウィンドウサイズの変更について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
田中太郎
記事: 24
登録日時: 13年前

ウィンドウサイズの変更について

#1

投稿記事 by 田中太郎 » 12年前

現在、ウィンドウサイズを変更して遊ぶゲームを作ろうとしています。
そこで SetWindowSize を使ってウィンドウサイズを変更しようとしていたのですが、この関数を使うと表示していた画像が伸縮?してしまいます。
(例えば640×480で表示してるときに480×640に変更すると表示されている画像が縦長になってしまいます)

表示してる画像に変化を与えずウィンドウサイズを変更することはできるでしょうか?
よろしくお願いします。

環境:win7 VC++ DxLIb使用

アバター
雨ガエル
記事: 34
登録日時: 13年前
住所: 新潟
連絡を取る:

Re: ウィンドウサイズの変更について

#2

投稿記事 by 雨ガエル » 12年前

DXライブラリを使用しているなら、SetGraphMode関数でウィンドウの解像度を変更できます。

↓リファレンス SetGraphMode
http://homepage2.nifty.com/natupaji/DxL ... .html#R4N1

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ウィンドウサイズの変更について

#3

投稿記事 by softya(ソフト屋) » 12年前

SetGraphMode()は次のような問題があります。
<注意>
 この関数を実行するとロードしたすべてのグラフィックデータハンドル、 作成したフォントハンドルは自動的に削除され、SetDrawArea, SetDrawScreen, SetDrawMode, SetDrawBlendMode, SetDrawBright 等の描画に関係する設定を行う関数による設定も全て初期状態に戻りますので、 画面モード変更後 LoadGraph関数や CreateFontToHandle関数等で再度ハンドルを作成し直し、 描画可能領域、描画対象画面等の各種描画系の設定も再度行う必要があります。
なので安易には使えません。

本家の掲示板で尋ねたほうが良い問題かと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

田中太郎
記事: 24
登録日時: 13年前

Re: ウィンドウサイズの変更について

#4

投稿記事 by 田中太郎 » 12年前

了解しました。
本家の掲示板で聞いてみたいと思います。

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

閉鎖

“C言語何でも質問掲示板” へ戻る