画像のハンドラについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
AXisIce22
記事: 2
登録日時: 11年前
住所: 山梨
連絡を取る:

画像のハンドラについて

#1

投稿記事 by AXisIce22 » 11年前

あるクラスのメンバに
int hImg;
と宣言していて、コンストラクタで
hImg=LoadGraph("~~~.jpg");
とロードして、そのクラスのdraw()関数で
DrawGraph(0,0,hImg,TRUE);
としても表示されません。

DrawGraphする直前にロードすれば表示されます。
なぜこうなるのか分かりません

*そのクラスは別のクラスのメンバになっていて
  そこからDraw()が呼ばれます

初歩的な質問ですいません

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

Re: 画像のハンドラについて

#2

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

そのパターンだと、DxLib_Init()前にコンストラクタが呼び出されてLoadGraph()している可能性が高そうです。
DxLib_Init()後でないとLoadGraph()は機能しませんので、インスタンスの生成タイミングを遅らせる必要があります。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
AXisIce22
記事: 2
登録日時: 11年前
住所: 山梨
連絡を取る:

Re: 画像のハンドラについて

#3

投稿記事 by AXisIce22 » 11年前

回答ありがとうございます。
まさにその通りで、無事解決しました。
ありがとうございました

閉鎖

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