ページ 1 / 1
OP
Posted: 2011年8月30日(火) 18:50
by WindowModeにする時
また質問させていただくことにしました。すごく簡単なことだとは思うのですがよろしくお願いします。
このコードです。↓
コード:
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
int Cr;
ChangeWindowMode( TRUE ); //ウィンドウモードに変更
Cr = GetColor( 0 , 255 , 0 ); //緑色を取得
DrawString( 250 , 240 - 16 , "Hello World", Cr); //文字列を表示
WaitKey(); // キー入力待ち
DxLib_End(); // DXライブラリ終了処理
return 0;
}
ほかにも問題がありましたら指摘お願いします。
Re: OP
Posted: 2011年8月30日(火) 18:51
by OP
どういう問題が起こるか書くのを忘れてしまいました。
小さい画面にはなるのですがその前に少しフルスクリーンモードになって黒い画面がちらつきます。
Re: OP
Posted: 2011年8月30日(火) 18:56
by 白い時空
まずDxLib_Initが無いようなので、ChangeWindowModeの直後に入れてください
Re: OP
Posted: 2011年8月30日(火) 19:04
by OP
入れてみたのですがどこが間違ってるのかわかりませんでした。
コード:
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{ return -1; // エラーが起きたら直ちに終了
}
int Cr;
ChangeWindowMode( TRUE ); //ウィンドウモードに変更
Cr = GetColor( 0 , 255 , 0 ); //緑色を取得
DrawString( 250 , 240 - 16 , "Hello World", Cr); //文字列を表示
DxLib_End(); // DXライブラリ終了処理
return 0;
}
Re: OP
Posted: 2011年8月30日(火) 19:12
by 沖 滉均
白い時空 さんが書きました:まずDxLib_Initが無いようなので、ChangeWindowModeの直後に入れてください
白い時空さんが書かれているとおりです。
OPさんのChangeWindowModeの位置は上に書いている位置に書かれていますか?
それからこのコードは自分が書いているものではないんでしょうか?
前にも書いたと思いますが、自分の環境でビルドしてみていますか?
Re: OP
Posted: 2011年8月30日(火) 19:17
by OP
自分でビルドしてるみるとエラーが結構出てきて書ききれませんでした。
コード:
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
int Cr;
ChangeWindowMode( TRUE ); //ウィンドウモードに変更
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{ return -1; // エラーが起きたら直ちに終了
}
Cr = GetColor( 0 , 255 , 0 ); //緑色を取得
DrawString( 250 , 240 - 16 , "Hello World", Cr); //文字列を表示
DxLib_End(); // DXライブラリ終了処理
return 0;
}
Re: OP
Posted: 2011年8月30日(火) 19:29
by 沖 滉均
色々なことをやってみるのは良いですけども、しっかり基礎を勉強してからやってみませんか?
その、結構出てきたというエラーは読んでみましたか?
原因の行(またはその付近)や原因が書かれているはずですよ。
今回はまず開始と終了の括弧があっていません。
というよりもWinMain(~)の後に { がありません。
コード:
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{ ←ここです
int Cr;
ChangeWindowMode( TRUE ); //ウィンドウモードに変更
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
Cr = GetColor( 0 , 255 , 0 ); //緑色を取得
DrawString( 250 , 240 - 16 , "Hello World", Cr); //文字列を表示
DxLib_End(); // DXライブラリ終了処理
return 0;
}
あと、インデントは統一しましょう。
非常に見づらいですし、エラーの原因も見つけにくくなってしまいます。
Re: OP
Posted: 2011年8月30日(火) 19:34
by OP
なんとかフルスクリーンにならずに済みました!!ありがとうございます!
Re: OP
Posted: 2011年8月30日(火) 22:07
by Dixq (管理人)
インデントが面倒な場合は、VC++なら自動で揃えてくれる機能があるので使ってみてはどうでしょう。
Ctrl+A, Ctrl+K, Ctrl+Fでできます。