メモ帳を例にすると、ALTを押しながらF、Xと押すことでアプリケーションを閉じることができます。
DXライブラリのメニューバーは、ALTを離さないとメニューバーがアクティブにならないようで、この一連の操作ができません。
この操作の動作をメモ帳などのアプリケーションと同様にすることは可能でしょうか?
それとメニューバーを使用したプログラムを起動してウィンドウが表示されるとき下方が一瞬チラつくように思えます。
SetWindowVisibleFlag関数でウィンドウの非表示設定してからDxLibの初期化を行い、
その後でウィンドウ表示設定を行えば誤魔化せるので問題ないと言えば問題ないのですが。
以下試したプログラム
#include "DxLib.h"
int WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
AddMenuItem_ID(MENUITEM_IDTOP, TEXT("ファイル(&F)"), 1000);
AddMenuItem_ID(1000, TEXT("終了(&X)\tCtrl+Shift+Q"), 1001);
AddKeyAccel_ID(1001, KEY_INPUT_Q, 1, 0, 1);
//SetWindowVisibleFlag(FALSE);
ChangeWindowMode(TRUE);
if (DxLib_Init() == -1) { return -1; }
SetDrawScreen(DX_SCREEN_BACK);
//SetWindowVisibleFlag(TRUE);
int PosX = 0;
while (ProcessMessage() == 0)
{
if (CheckMenuItemSelect_ID(1001)) { break; }
ClearDrawScreen();
DrawCircle(PosX + 10, 20, 10, GetColor(255, 0, 0));
PosX = (PosX + 2) % 300;
ScreenFlip();
}
DxLib_End();
return 0;
}