Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
何度も申し訳ありません
enterかspaceを押すと次の処理へ行くにはどうしたらいいでしょうか?
VC++ Dxlib win8
enterかspaceを押すと次の処理へ行くにはどうしたらいいでしょうか?
VC++ Dxlib win8
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
抽象的な答えにくい質問だと思いますが、enterかspaceを押すと次の処理へ行くプログラムを組み、コンパイルし、実行すればいいと思います。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
- namachan10777
- 記事: 32
- 登録日時: 10年前
- 住所: 四国
- 連絡を取る:
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
よくわかりませんが、DXライブラリの関数(CheckHitKeyとかGetHitKeyStateAllとか)でキーの押下状態を監視して、エンター(KEY_INPUT_RETURN)かスペース(KEY_INPUT_SPACE(多分))が押されると次の処理を行うということでしょうか。
処理を関数にまとめてswitch文で切り替えるとかになると思います。
Javaですが、参考になるとしたらこのサイトの後半とかでしょうかhttp://www.gamecradle.net/document/main ... ction.html
処理を関数にまとめてswitch文で切り替えるとかになると思います。
Javaですが、参考になるとしたらこのサイトの後半とかでしょうかhttp://www.gamecradle.net/document/main ... ction.html
D言語!D言語!
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
while( CheckHitKey( KEY_INPUT_RETURN );
こうすればいいのでしょうか?
こうすると;に")"が必要ですとでるのですがどうしたらいいのでしょうか?
こうすればいいのでしょうか?
こうすると;に")"が必要ですとでるのですがどうしたらいいのでしょうか?
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
とりあえず というように;の前に)を補えばコンパイルは通るはずですが、koma さんが書きました:while( CheckHitKey( KEY_INPUT_RETURN );
こうすればいいのでしょうか?
こうすると;に")"が必要ですとでるのですがどうしたらいいのでしょうか?
そんなコードは実行しても意味がありません。削除し、きちんと状態遷移を行うプログラムを書いてください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
いろんなサイトを見てもうまくいかないのですがどうしたらいいでしょうか?
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
サイトを見るだけではなく、適切なコードを書き、コンパイルし、実行する必要があります。koma さんが書きました:いろんなサイトを見てもうまくいかないのですがどうしたらいいでしょうか?
今書いてあるコードを見せていただけると、改善点を教えられるかもしれません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
SetDrawScreen( DX_SCREEN_BACK ); //裏処理開始
int Handle; //データハンドル格納用変数
Handle = LoadGraph( "images/Lotop.png" ); // 画像をロード
DrawGraph( 0, 0, Handle, TRUE ); // データハンドルを使って画像を描画
DrawFormatString( 380, 350,GetColor(0,0,0), "Press the Enter button"); //文字表示
ScreenFlip(); //裏画面を表画面に反映
WaitKey(); //キー入力待ち
DxLib_End(); // DXライブラリ終了処理
return 0;
}
何度もすみません 上は少し省略してます
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
例えばこんな感じでしょうか?
#include <DxLib.h>
void WaitEnter(void){
// Enterが押されるまで待つ
while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_RETURN ) == 0);
// Enterが離されるまで待つ
while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_RETURN ) != 0);
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int){
if (ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() != 0) return -1;
SetDrawScreen( DX_SCREEN_BACK ); //裏処理開始
int Handle; //データハンドル格納用変数
Handle = LoadGraph( "images/Lotop.png" ); // 画像をロード
DrawGraph( 0, 0, Handle, TRUE ); // データハンドルを使って画像を描画
DrawFormatString( 380, 350,GetColor(0,0,0), "Press the Enter button"); //文字表示
ScreenFlip(); //裏画面を表画面に反映
WaitEnter();
ClearDrawScreen();
DrawFormatString( 380, 350,GetColor(255,255,255), "次の処理"); //文字表示
ScreenFlip(); //裏画面を表画面に反映
WaitKey(); //キー入力待ち
DxLib_End(); // DXライブラリ終了処理
return 0;
}
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode( TRUE ); // ウィンドウモード
SetGraphMode(1024, 768, 32); //ウィンドウサイズ変更
DxLib_Init(); // DXライブラリ初期化処理
SetDrawScreen( DX_SCREEN_BACK ); //裏処理開始
int Handle; //データハンドル格納用変数
Handle = LoadGraph( "images/Lotop.png" ); // 画像をロード
DrawGraph( 0, 0, Handle, TRUE ); // データハンドルを使って画像を描画
DrawFormatString( 380, 350,GetColor(0,0,0), "Press the Enter button"); //文字表示
ScreenFlip(); //裏画面を表画面に反映
void WaitEnter(void);{ // Enterが押されるまで待つ
while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_RETURN ) == 0);// Enterが離されるまで待つ
while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_RETURN ) != 0);
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
Re: Enterかspaceを押すと次の処理へ VC++,Dxlib,win8
なるほど。ぱっと見意味がわかりませんでしたが、
ダミーのプロトタイプ宣言をした後、普通のブロックに処理を入れているわけですね。
解決でしたら、解決チェックをお願いします。koma さんが書きました:これでうまくいきました。ありがとうございます
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)