다음을 통해 공유


MSAAMENUINFO 구조체(oleacc.h)

서버 개발자가 소유자가 그린 메뉴 항목의 이름을 노출하는 데 사용됩니다.

구문

typedef struct tagMSAAMENUINFO {
  DWORD  dwMSAASignature;
  DWORD  cchWText;
  LPWSTR pszWText;
} MSAAMENUINFO, *LPMSAAMENUINFO;

멤버

dwMSAASignature

형식: DWORD

oleacc.h에 정의된 MSAA_MENU_SIG 합니다.

cchWText

형식: DWORD

유니코드 null로 끝나는 문자를 포함하지 않고 메뉴 항목에 대한 텍스트의 길이(문자)입니다.

pszWText

형식: LPWSTR

유니코드 null로 종료된 문자를 포함하여 유니코드의 메뉴 항목 텍스트입니다.

설명

서버 개발자는 MSAAMENUINFO 구조를 소유자 그리기 메뉴 항목 데이터와 연결하여 IAccessible을 구현하지 않고도 메뉴 항목을 노출할 수 있습니다.

MSAAMENUINFO 구조체는 MENUITEMINFO 구조체의 dwItemData 멤버가 가리키는 소유자 그리기 메뉴 항목에 대한 데이터를 포함하는 애플리케이션별 구조체(또는 클래스)의 첫 번째 멤버입니다.

클래스의 첫 번째 멤버는 항상 가상 함수 테이블에 대한 컴파일러 생성 포인터이므로 MSAAMENUINFO 구조체는 가상 함수를 포함하는 클래스의 멤버가 될 수 없습니다. 이 문제를 해결하려면 MSAAMENUINFO 를 첫 번째 멤버로 포함하는 구조체와 소유자가 그린 항목 데이터를 포함하는 가상 함수를 두 번째 멤버로 사용하여 클래스에 대한 포인터를 구현할 수 있습니다.

예제

다음 코드 조각은 MSAAMENUINFO를 포함하는 애플리케이션별 소유자 그리기 메뉴 정보 구조의 선언을 보여 냅니다.


// Application-specific owner-drawn menu info struct. Owner-drawn data 
// is a pointer to one of these. MSAAMENUINFO must be the first 
// member. 
struct MenuEntry
{
    MSAAMENUINFO m_MSAA;       // MSAA info - must be first element.
    LPTSTR       m_pName;      // Menu text, for display. NULL for
                               //  separator item.
    int          m_CmdID;      // Menu command ID.
    int          m_IconIndex;  // Index of icon in bitmap.
};

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 oleacc.h
재배포 가능 파일 SP6 이상 및 Windows 95를 Windows NT 4.0의 활성 접근성 1.3 RDK

추가 정보

Owner-Drawn 메뉴 항목 노출

IAccessible