DrawStringで文字が出力できない
Posted: 2010年6月04日(金) 19:02
ちょっと長くなるのではしょりますが
以下のコードで int CStage1::stageClear() 関数内の DrawString( m_x2, m_y2,"ステージ1クリアー", RGB(255,0,0) );
が画面に反映されないです
ブレークポイントで止めると画面に出力してるんですが、
ブレークポイント入れないと画面に出力されないです
どこか問題点などあるでしょうか?
//-------------------------------------------------
static CTitle gTitle;
static CStage1 gStage1;
static CCommonData gCommonData;
static int gMode;
//-------------------------------------------------
switch( gMode )
{
case 0:
break;
case 10:
gTitle.Draw();
gTitle.Move( &gMode );
break;
case 20:
gStage1.Draw();
gStage1.Move( &gMode );
break;
case 30:
break;
default:
break;
}
//-------------------------------------------------
void CStage1::Init( CCommonData *data )
{
m_img02 = LoadGraph( "02.jpg" );
m_x = (800/2)-(32/2);
m_y = (int)(600*0.75);
m_x2 = def_window_size_x;
m_y2 = (int)def_window_size_y * 0.25;
_data = data;
_data->InitTile();
}
//-------------------------------------------------
void CStage1::Move( int *mode )
{
// クリアー条件を満たした
if( _data->CheckClear() == 1 )
{
int r = stageClear();
if( r == 1 )
*mode = 10;
}
}
//-------------------------------------------------
int CStage1::stageClear()
{
DrawString( m_x2, m_y2, "ステージ1クリアー", RGB(255,0,0) );
m_x2 = m_x2 - 5;
if( m_x2 == -10 )
return 1;
//ここにブレークポイントを設定してみると出力されているのが確認できる
return 0;
}
以下のコードで int CStage1::stageClear() 関数内の DrawString( m_x2, m_y2,"ステージ1クリアー", RGB(255,0,0) );
が画面に反映されないです
ブレークポイントで止めると画面に出力してるんですが、
ブレークポイント入れないと画面に出力されないです
どこか問題点などあるでしょうか?
//-------------------------------------------------
static CTitle gTitle;
static CStage1 gStage1;
static CCommonData gCommonData;
static int gMode;
//-------------------------------------------------
switch( gMode )
{
case 0:
break;
case 10:
gTitle.Draw();
gTitle.Move( &gMode );
break;
case 20:
gStage1.Draw();
gStage1.Move( &gMode );
break;
case 30:
break;
default:
break;
}
//-------------------------------------------------
void CStage1::Init( CCommonData *data )
{
m_img02 = LoadGraph( "02.jpg" );
m_x = (800/2)-(32/2);
m_y = (int)(600*0.75);
m_x2 = def_window_size_x;
m_y2 = (int)def_window_size_y * 0.25;
_data = data;
_data->InitTile();
}
//-------------------------------------------------
void CStage1::Move( int *mode )
{
// クリアー条件を満たした
if( _data->CheckClear() == 1 )
{
int r = stageClear();
if( r == 1 )
*mode = 10;
}
}
//-------------------------------------------------
int CStage1::stageClear()
{
DrawString( m_x2, m_y2, "ステージ1クリアー", RGB(255,0,0) );
m_x2 = m_x2 - 5;
if( m_x2 == -10 )
return 1;
//ここにブレークポイントを設定してみると出力されているのが確認できる
return 0;
}