13 #pragma managed( push, off )    26     bool GetMenuCommandItem( HMENU hMenu, UINT uId, HMENU* phMenu, MENUITEMINFOW* psItem, UINT uMask ) noexcept {
    31             if ( 
nullptr == hMenu ) {
    36             else for ( 
int nIndex = 0, nCount = ::GetMenuItemCount( hMenu ); nCount > nIndex; ++nIndex ) {
    38                 MENUITEMINFOW sItem = { 
sizeof( MENUITEMINFOW ) };
    39                 sItem.fMask = ( MIIM_ID | MIIM_SUBMENU | uMask );
    40                 if ( 0 != ::GetMenuItemInfoW( hMenu, nIndex, 
true, &sItem ) ) {
    42                     if ( 
nullptr != sItem.hSubMenu ) {
    51                     else if ( uId == sItem.wID ) {
    53                         if ( 
nullptr != phMenu ) {
    59                         if ( 
nullptr != psItem ) {
    83             if ( 
nullptr == hMenu ) {
    88             else if ( 
nullptr == psItem ) {
    93             else for ( 
int nIndex = 0, nCount = ::GetMenuItemCount( hMenu ); nCount > nIndex; ++nIndex ) {
    95                 MENUITEMINFOW sItem = { 
sizeof( MENUITEMINFOW ) };
    96                 sItem.fMask = ( MIIM_ID | MIIM_SUBMENU );
    97                 if ( 0 != ::GetMenuItemInfoW( hMenu, nIndex, 
true, &sItem ) ) {
    99                     if ( 
nullptr != sItem.hSubMenu ) {
   108                     else if ( uId == sItem.wID ) {
   110                         if ( 0 != ::SetMenuItemInfoW( hMenu, nIndex, 
true, psItem ) ) {
   128         HMENU result = 
nullptr;
   158             ruData = sItem.dwItemData;
   175             MENUITEMINFOW sItem = { 
sizeof( MENUITEMINFOW ) };
   176             sItem.fMask      = MIIM_DATA;
   177             sItem.dwItemData = uData;
   201             if ( 
nullptr == hMenu ) {
   207             UINT uState = ::GetMenuState( hMenu, uId, MF_BYCOMMAND );
   210             result = ( MF_ENABLED == ( uState & ( MF_GRAYED | MF_DISABLED ) ) );
   225             if ( 
nullptr == hMenu ) {
   230             else if ( 0 == ::EnableMenuItem( hMenu, uId, ( MF_BYCOMMAND | ( bEnable? MFS_ENABLED: MFS_DISABLED ) ) ) ) {
   251             if ( 
nullptr == hMenu ) {
   257             UINT uState = ::GetMenuState( hMenu, uId, MF_BYCOMMAND );
   260             result = ( MF_CHECKED == ( uState & MF_CHECKED ) );
   275             if ( 
nullptr == hMenu ) {
   280             else if ( 0 == ::CheckMenuItem( hMenu, uId, ( MF_BYCOMMAND | ( bCheck? MFS_CHECKED: MFS_UNCHECKED ) ) ) ) {
   300             for ( 
int nIndex = 0, nCount = ::GetMenuItemCount( hMenu ); nCount > nIndex; ++nIndex ) {
   302                 MENUITEMINFOW sItem = { 
sizeof( MENUITEMINFOW ) };
   303                 sItem.fMask = ( MIIM_STATE | MIIM_ID | MIIM_SUBMENU );
   304                 if ( 0 != ::GetMenuItemInfoW( hMenu, nIndex, 
true, &sItem ) ) {
   306                     if ( 
nullptr != sItem.hSubMenu ) {
   311                     else if ( MF_ENABLED == ( ( MF_GRAYED | MF_DISABLED ) & sItem.fState ) ) {
   327         HWND result = 
nullptr;
   330             HWND hParent = ::GetParent( hWnd );
   331             if ( 
nullptr == hParent ) {
   333                 hParent = ::GetWindow( hWnd, GW_OWNER );
   334                 if ( 
nullptr == hParent ) {
   355             if ( ( hChild == hWnd ) || ( 0 != ::IsChild( hWnd, hChild ) ) ) {
   366 #pragma managed( pop ) LIB_WINDOW_API bool GetMenuCommandData(HMENU hMenu, UINT uId, ULONG_PTR &ruData) noexcept
メニューコマンドデータ取得関数 
LIB_WINDOW_API bool SetMenuCommandItem(HMENU hMenu, UINT uId, MENUITEMINFOW const *psItem) noexcept
メニューコマンド項目情報設定関数 
LIB_WINDOW_API bool CheckMenuCommand(HMENU hMenu, UINT uId, bool bCheck) noexcept
メニューコマンドチェック状態設定関数 
LIB_WINDOW_API int GetEnableMenuCommandCount(HMENU hMenu) noexcept
メニューコマンド有効数取得関数 
LIB_WINDOW_API bool IsEnableMenuCommand(HMENU hMenu, UINT uId) noexcept
メニューコマンド有効状態取得関数 
LIB_WINDOW_API bool GetMenuCommandItem(HMENU hMenu, UINT uId, HMENU *phMenu=nullptr, MENUITEMINFOW *psItem=nullptr, UINT uMask=0) noexcept
メニューコマンド項目情報取得関数 
LIB_WINDOW_API HMENU FindMenuCommand(HMENU hMenu, UINT uId) noexcept
メニューコマンド検索関数 
LIB_WINDOW_API HWND GetParentOrOwner(HWND hWnd) noexcept
親またはオーナーウィンドウ取得関数 
LIB_WINDOW_API bool EnableMenuCommand(HMENU hMenu, UINT uId, bool bEnable) noexcept
メニューコマンド有効状態設定関数 
LIB_WINDOW_API bool SetMenuCommandData(HMENU hMenu, UINT uId, ULONG_PTR uData) noexcept
メニューコマンドデータ設定関数 
LIB_WINDOW_API bool IsCheckMenuCommand(HMENU hMenu, UINT uId) noexcept
メニューコマンドチェック状態取得関数 
LIB_WINDOW_API bool IsOwnOrChild(HWND hWnd, HWND hChild) noexcept
自分または子ウィンドウ判定関数