トップページ > 過去ログ > 記事閲覧
LoadDivGraphToResource
名前:DXライブラリ初心者 日時: 2009/12/19 11:37

LoadDivGraphToResourceで.rc(リソース)から画像(IDB_BITMAP5)を分割して読み込みたいと思っているのですが int ghandle=LoadDivGraphToResource(IDB_BITMAP5,"bmp",13,13,1,50,75,g); とすると一つ目の引数がchar型でないというエラーが出ます。IDB_BITMAP5を"IDB_BITMAP5"に置き換えればいいという問題でもないような気がするのですが、 関数の使い方を間違っているような気がします。 LoadDivGraphToResourceについて詳しい方がいたら、関数の使い方の間違いについて教えてください。

Page: 1 |

Re: LoadDivGraphToResource ( No.1 )
名前:Will 日時:2009/12/19 12:45

サンプルです。 #include "DxLib.h" #include "resource.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { // ウインドウモードに変更 ChangeWindowMode( TRUE ) ; if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1; // エラーが起きたら直ちに終了 } int g[2]; int ret = LoadDivGraphToResource(MAKEINTRESOURCE(100), "BITMAPP", 2, 2, 1, 100, 100, g); if (ret == -1) { AppLogAdd("ロード失敗\n"); DxLib_End() ; // DXライブラリ使用の終了処理 return 0; } AppLogAdd("g[0] = %d\n", g[0]); AppLogAdd("g[1] = %d\n", g[1]); DrawGraph(0,0,g[0],TRUE); DrawGraph(200,0,g[1],TRUE); WaitKey() ; // キーの入力待ち((7-3)『WaitKey』を使用) DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 } ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=626 この質問にあるとおりMAKEINTRESOURCEはBITMAPのときに正しい結果を返しませんので、rcファイルを直接修正してBITMAPの部分をBITMAPPに変更してください。 なお、変更後はResEdtで正しく表示されなくなります。(BITMAPPなんて解釈できないので) #管理人さんへ LoadGraphToResource関数ではID値を直接渡せる関数が用意されていますが、LoadDivGraphToResource関数にはそれに相当するものがありません。 そのため、上記のようないびつな方法しかないのでしょうか?
Re: LoadDivGraphToResource ( No.2 )
名前:DXライブラリ初心者 日時:2009/12/20 02:28

Willさん MAKEINTRESOURCE(ファイル名)と、BITMAPPに変更するというところがポイントなのですね。 戻り値が‐1のときの処理も参考になりました。 無事画像の分割読み込みをすることができました。 ありがとうございます!!
Re: LoadDivGraphToResource ( No.3 )
名前:管理人 日時:2009/12/22 00:28

> Willさん はい、ありません ビットマップ専用のリソースタイプから読み込めないなんて変ですよね・・・ というわけでビットマップリソースから分割読込できる関数を追加ました // BMPリソースから画像データを分割読み込みする int LoadDivGraphToResource( int ResourceID, int AllNum, int XNum, int YNum, int XSize, int YSize, int *HandleBuf ) ; DXライブラリ初心者さん、もしまだこちらのスレッドをご覧でしたら 上記の関数が追加されたこちらのバージョンをお使い下さい m(_ _)m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい)
Re: LoadDivGraphToResource ( No.4 )
名前:DXライブラリ初心者 日時:2009/12/31 03:34

管理者さん、Willさんありがとうございます。 投稿してからすぐに管理者さんが対応してくださったのですね。 今、早速インストールして、うまく分割読み込みできました!! ありがとうございます。

Page: 1 |