> 変数のように、1箇所変更すればほかの部分にも適用されるようにはできませんか?
LoadGraph や SaveDrawScreen に渡すファイルのパスを char * 型の変数にすることで
その変数に代入するファイルパスを変更すれば他の部分にも適用されるようにすることができます
例:4回の LoadGraph の引数として "Test1.bmp" を全部書いているのを、一箇所 "Test1.bmp" と記述すれば良いようにする
GrHandle1 = LoadGraph( "Test1.bmp" ) ;
GrHandle2 = LoadGraph( "Test1.bmp" ) ;
GrHandle3 = LoadGraph( "Test1.bmp" ) ;
GrHandle4 = LoadGraph( "Test1.bmp" ) ;
↓ char *FilePath に "Test1.bmp" のアドレスを代入して使用するようにする
char *FilePath = "Test1.bmp" ;
GrHandle1 = LoadGraph( FilePath ) ;
GrHandle2 = LoadGraph( FilePath ) ;
GrHandle3 = LoadGraph( FilePath ) ;
GrHandle4 = LoadGraph( FilePath ) ;
> また、画像の入力を、ドラッグ&ドロップで行うことはできますか?もしできなければ大丈夫です。
SetDragFileValidFlag( TRUE ) ; を実行してソフトのウインドウに対してファイルのドラッグ&ドロップが
できるようにした状態で、GetDragFileNum の戻り値が 1 以上になった際に GetDragFilePath を使用することで
ウインドウにドラッグ&ドロップされたファイルのパスを取得することができます
使用例:ウインドウにドラッグ&ドロップされた画像ファイルを読み込んで画面に表示する
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
int GrHandle = -1 ;
// ウインドウモードで起動
ChangeWindowMode( TRUE ) ;
// DXライブラリの初期化
if( DxLib_Init() < 0 ) return -1 ;
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
// ファイルのドラッグ&ドロップを許可する
SetDragFileValidFlag( TRUE ) ;
// メインループ
while( ProcessMessage() == 0 )
{
// 画面のクリア
ClearDrawScreen() ;
// ドラッグ&ドロップされたファイルが1つ以上ある場合は画像として読み込む
if( GetDragFileNum() > 0 )
{
char FilePath[ MAX_PATH ] ;
// ドラッグ&ドロップされたファイルのパスを取得する
GetDragFilePath( FilePath ) ;
// ドラッグ&ドロップされたファイルを画像として読み込む
GrHandle = LoadGraph( FilePath ) ;
}
// 画像を描画する
if( GrHandle != -1 )
{
DrawGraph( 0, 0, GrHandle, TRUE ) ;
}
// 裏画面の内容を表画面に反映
ScreenFlip() ;
}
// DXライブラリの後始末
DxLib_End() ;
// ソフトの終了
return 0 ;
}
よろしければお使いください m(_ _)m