動画見ながら作ってたのですが質問です

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

動画見ながら作ってたのですが質問です

#1

投稿記事 by ao213 » 5年前

動画を見ながら作ってたのですが画像がうまく読み込めてなくて真っ黒のままですがどうしたらいいのか教えてください。

http://www.nicovideo.jp/watch/sm20771874
///////////////////////////////////////////////////////////////////
#include "DxLib.h"

bool Process(char key[256])
{
if (ScreenFlip() != 0)return false;
if (ProcessMessage() != 0)return false;
if (ClearDrawScreen() != 0)return false;
if (GetHitKeyStateAll(key) != 0)return false;
return true;

}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
////////////////////////
////////////////////////
int JpgHandle = LoadGraph("face_1.jpg"); //画像の読み込み
ChangeWindowMode(TRUE); //ウィンドウモード
SetWindowSizeChangeEnableFlag(TRUE); //
SetGraphMode(640, 480, 16);
SetDrawScreen(DX_SCREEN_BACK);
SetDrawMode(DX_DRAWMODE_BILINEAR);
SetWindowText("テスト"); //タイトル
ChangeWindowMode(TRUE);
SetWindowSizeChangeEnableFlag(TRUE);
SetGraphMode(640, 480, 24);
DxLib_Init();
//////////////////////////
//////////////////////////

enum
{
TITLE,
GAME,
RESULT
}status = TITLE;

char key[256];

while (Process(key))
{
switch (status)
{
case TITLE:
DrawGraph(10, 10,JpgHandle,FALSE);
if (key[KEY_INPUT_P] == 1)
{
status = GAME;
}
break;

case GAME:
break;

case RESULT:
break;
}


}

}

アバター
Dixq (管理人)
管理人
記事: 1661
登録日時: 13年前
住所: 北海道札幌市
連絡を取る:

Re: 動画見ながら作ってたのですが質問です

#2

投稿記事 by Dixq (管理人) » 5年前

int JpgHandle = LoadGraph("face_1.jpg"); //画像の読み込み
の処理が
DxLib_Init();
の前にあるからです。
画像の読み込みなどにかかわるDXライブラリの関数は全て初期化処理の後にコールしなければなりません。
一部設定系の関数で初期化処理前に呼べるものはあります。
(ChangeWindowMode等)

今回の場合は、LoadGraph関数をDxLib_Init()の後に書けば読み込めるはずです。

返信

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