<Return[D]><Top>

DeleteMenu

Declare Function Api_DeleteMenu& Lib "user32" Alias "DeleteMenu" (ByVal hMenu&, ByVal nPosition&, ByVal wFlags&)

Declare Function DeleteMenu Lib "user32" Alias "DeleteMenu" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long

指定されたメニューから 1 つのメニュー項目を削除する。そのメニュー項目が他のメニューやサブメニューを開くよう設定されている場合は、それらのメニューやサブメニューのハンドルも破棄し、関連付けられているメモリを解放する。

パラメータ
hMenu
    削除対象のメニューのハンドルを指定する。
uPosition
    削除対象のメニュー項目を指定する。uFlags パラメータの値に基づいて、識別子または位置を指定する。
uFlags
    uPosition パラメータの意味を指定する。次の値のいずれかを指定する。

    値                              意味                                                                                                                                        
    MF_BYCOMMAND uPosition パラメータがメニュー項目の識別子を意味する。
  MF_BYCOMMAND と MF_BYPOSITION のどちらのフラグも指定されていない場合、MF_BYCOMMAND
  フラグは既定のフラグとして扱われる。
    MF_BYPOSITION uPosition パラメータはメニュー項目の位置を意味する。
  この位置は、メニュー内でのメニュー項目の相対位置を、0 ベースで指定したものである。たとえば、0 を指定
  すると、上端のメニュー項目を意味する。


戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。

解説
    メニューを変更した場合、そのメニューに関連するウィンドウが現在表示中かどうかにかかわりなく、必ず DrawMenuBar 関数を呼び出す。