お世話になっております。
サンプルそのままのコードなのですがEnumFontNameが何故か動きません。
環境はVS2017最新更新,dxlib 3.19bです。
以下のコードを実行すると、FontNumの返り値としては10(想定通り)ですが
NameBuffer[0]〜NameBuffer[9]には全て""が代入されてしまいます。
(画面に表示されるのは"4個目のフォントはなんだろう"のみ)
何か使い方がおかしいのでしょうか?
#include "DxLib.h"
void init() {
ChangeWindowMode(true); //ウインドウモードにする
SetWindowSize(640, 480);
if (DxLib_Init() == -1) // DXライブラリ初期化処理
{
return; // エラーが起きたら直ちに終了
}
SetDrawScreen(DX_SCREEN_BACK); //描画先を裏画面に設定
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
init();
char NameBuffer[10][64];
int FontNum;
// フォントを最大10個列挙
FontNum = EnumFontName(&NameBuffer[0][0], 10);
// 4個以下しかフォント名が列挙されなかったら次の処理は行わない
if (FontNum >= 4) {
// 4個目に列挙されたフォント名を持つフォントに変更
ChangeFont(NameBuffer[3]);
// 変更したフォントで文字を描画し、その後フォント名も描画
DrawString(100, 100, "4個目のフォントはなんだろう", GetColor(255, 255, 255));
DrawString(100, 130, NameBuffer[3], GetColor(255, 255, 255));
}
ScreenFlip();
// キー入力を待つ
WaitKey();
// DXライブラリ使用の終了処理
DxLib_End();
return 0;
}