Re: ×ボタンとターミナル画面の閉じ方 ( No.1 ) |
- 名前:管理人 日時:2017/03/28 01:34
> Dxライブラリの描画ウィンドウの右上の「×」ボタンを押した時、自動的に
> ターミナル画面も終了するようにしたいと思っているのですが、やり方が分からずに困っています。
すみません、DXライブラリを使用したソフト開発において『ターミナル画面』という名称を聞いたことが無いのですが、
ターミナル画面とは何のことを指されているのでしょうか?
|
Re: ×ボタンとターミナル画面の閉じ方 ( No.2 ) |
- 名前:Sun 日時:2017/03/28 07:59
分かりづらくてすみません。
ターミナル画面とはプログラム実行時に出てくる黒いウィンドウのつもりで使っていました。
printf関数を使ったときに文字が表示される画面です。
本質問を別の言葉で言い換えると以下の質問になります。
描画ウィンドウの右上の「×」ボタンを押した時に、
実行プログラムそのものを終了させるには
どうすれば良いですか?
現時点では「×」ボタンを押してもプログラム自体は動いてしまっています。
たとえば「「×」ボタンを押した」ということで何かの変数の値が変わるのであれば
その変数の値に応じてプログラム自体を終了させることができるのですが、
そういった変数などございますか?
大変ご多忙のところ申し訳ございませんが、どうぞ宜しくお願いいたします。
|
Re: ×ボタンとターミナル画面の閉じ方 ( No.3 ) |
- 名前:管理人 日時:2017/03/29 02:09
> ターミナル画面とはプログラム実行時に出てくる黒いウィンドウのつもりで使っていました。
> printf関数を使ったときに文字が表示される画面です。
ご返答ありがとうございます、理解しました
『DXライブラリの使い方』ページに沿ってプロジェクトを構築している場合は
ターミナル画面は表示されないと思いますが、独自の方法でプロジェクトを設定されたのでしょうか?
ともあれ、描画ウインドウの右上の×ボタンを押してウインドウが閉じられた後は
関数 ProcessMessage が -1 を返すようになりますので、以下のように ProcessMessage が -1 を
返すようになったら WinMain から抜けるようなプログラムにしておくと実行プログラムそのものが
終了するようになります
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
ChangeWindowMode( TRUE ) ;
if( DxLib_Init() == -1)return -1;
SetDrawScreen( DX_SCREEN_BACK ) ;
// ProcessMessage が -1 以外を返してくる間はループ
while( ProcessMessage() != -1 )
{
ClearDrawScreen() ;
ScreenFlip() ;
}
DxLib_End();
return 0;
}
よろしければお試しください m(_ _)m
|