トップページ > 記事閲覧
LoadGraph関数がエラーになります
名前:fghck852 日時: 2019/07/26 16:36

お世話になります。質問ばかりですみません。 Android版でLoadGraph関数のサンプルプログラムを実行(エミュレータでデバッグ実行)しているのですが、 LoadGraph関数からエラー(−1)が返ってきます。 自分でもいろいろ試したのですが、エラーになる原因がわかりません。 詳細は下記の通りです。よろしくお願いします。 1.現象 (1)「DXライブラリ 関数リファレンスページ」のLoadGraph関数のサンプルプログラムをAndroidエミュレータでデバッグ実行しているのですが、 LoadGraph関数からエラー(−1)が返ってきます。 (2)サンプルプログラムのLoadGraph関数のファイル名は(3)の様に変更しています。それ以外は手を加えていません。 (3)GHandle = LoadGraph("d:\\test1.bmp");の次の行にブレークポイントを設定してデバッグ実行すると、GHandleが−1と表示されます。 その後「続行」でプログラムを実行しても、当然ながら、画像は何も表示されません。 (4)読込むファイル「test1.bmp」はD:ドライブのルートディレクトリに置いてあります。 「test1.bmp」をWindowsの「ペイント」で開くと、花の写真が表示されます。横400×縦256ピクセルで312KBです。 (5)ライブラリは暫定最新版の「DxLibAndroidTest_ARM」を使用していますが、標準の「DxLib_Android3_20f」にしても同じです。 2.ソースコード(main.cpp) #include "DxLib.h" int android_main(void) { int GHandle; if (DxLib_Init() == -1) // DXライブラリ初期化処理 { return -1; // エラーが起きたら直ちに終了 } // BMP画像のメモリへの読みこみ GHandle = LoadGraph("d:\\test1.bmp"); // 画面左上に描画します(『DrawGraph』を使用) DrawGraph(0, 0, GHandle, FALSE); // 読み込んだ画像のグラフィックハンドルを削除 DeleteGraph(GHandle); // キーの入力待ち(『WaitKey』を使用) WaitKey(); DxLib_End(); // DXライブラリ使用の終了処理 return 0; // ソフトの終了 } 3.問合せ項目 (1)LoadGraph関数がエラーになる原因として何が考えられるでしょうか。 (2)LoadGraph関数で読込むファイル名をサンプル通りに"test1.bmp"とした場合は、「test1.bmp」はどこに置けば良いのでしょうか。 以上、よろしくお願いします。
メンテ

Page: 1 |

Re: LoadGraph関数がエラーになります ( No.1 )
名前:was-blue.0793 日時:2019/07/26 16:50

横から失礼します。 LoadGraphのパスの指定がWindows方式であることが理由と思われます。 Android版で使用する画像などのリソースはassetsフォルダを作成してそこに入れ、パスの指定はassetsフォルダをルートとしたパスで指定します。 携帯からの投稿のため詳しく書けず申し訳ございませんが、ご参考になれば幸いです。
メンテ
Re: LoadGraph関数がエラーになります ( No.2 )
名前:fghck852(解決済み) 日時:2019/07/26 17:39

書き込みありがとうございます。 「assetsフォルダ」を作成し、その中にbmpファイルを入れ、プログラムでのファイル名をサンプルの通りに LoadGraph("test1.bmp")としたところ、エラーは無くなり、画像が表示されました。 「assetsフォルダ」の作成方法は次のサイトを参考にしました。 qiita.com/furui/items/f2b5c972b2584d6f7d28 どうもありがとうございました。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存