다음을 통해 공유


StringFormat::GetHotkeyPrefix 메서드(gdiplusstringformat.h)

StringFormat::GetHotkeyPrefix 메서드는 핫 키 접두사인 앰퍼샌드(&)가 발생할 때 문자열에서 수행되는 처리 유형을 나타내는 HotkeyPrefix 열거형의 요소를 가져옵니다.

구문

HotkeyPrefix GetHotkeyPrefix();

반환 값

형식: HotkeyPrefix

이 메서드는 문자열에서 수행되는 핫 키 접두사 처리의 유형을 나타내는 HotkeyPrefix 열거형의 요소를 반환합니다.

설명

선택키라고도 하는 핫 키는 최종 사용자에게 기능에 대한 바로 가기 키를 제공하도록 프로그래밍되고 ALT 키를 눌러 활성화되는 키입니다. 키는 애플리케이션에 종속되며 일반적으로 메뉴 이름 또는 메뉴 항목에서 밑줄 문자로 식별됩니다. 예를 들어 Alt 키를 누르면 파일 메뉴의 문자 F가 밑줄로 표시됩니다. F 키는 파일 메뉴를 표시하는 바로 가기입니다.

클라이언트 프로그래머는 일반적으로 메뉴 또는 메뉴의 항목 이름으로 표시되는 문자열에서 핫 키 접두사인 앰퍼샌드(&)를 사용하고 StringFormat::SetHotkeyPrefix 메서드를 사용하여 적절한 처리 유형을 설정하여 애플리케이션에서 핫 키를 지정합니다. 문자열의 문자 앞에 앰퍼샌드가 있으면 문자열이 디스플레이 디바이스에 그려질 때 발생하는 처리 중에 문자에 해당하는 키가 핫 키가 됩니다. 앰퍼샌드는 활성화할 문자 앞에 있기 때문에 핫 키 접두사라고 합니다. HotkeyPrefixNone이 StringFormat::SetHotkeyPrefix에 전달되면 핫 키 접두사 처리가 발생하지 않습니다.

참고핫 키 라는 용어는 여기서 액세스 키라는 용어와 동의어로 사용됩니다. 핫 키라는 용어는 다른 Windows API에서 다른 의미를 가질 수 있습니다.
 

예제

다음 예제에서는 StringFormat 개체를 만들고 문자열에서 수행할 핫 키 접두사 처리 형식을 설정한 다음 처리 형식을 가져오고 변수에 저장합니다. 그런 다음, 코드는 두 번째 StringFormat 개체를 만들고 저장된 값을 사용하여 두 번째 StringFormat 개체에 대한 핫 키 접두사 처리 유형을 설정합니다. 이 코드는 두 번째 StringFormat 개체를 사용하여 핫 키 접두사 문자가 포함된 문자열을 그립니다. 또한 이 코드는 문자열의 레이아웃 사각형을 그립니다.

VOID Example_GetHotkeyPrefix(HDC hdc)
{
   Graphics graphics(hdc);

   SolidBrush  solidBrush(Color(255, 255, 0, 0)); 
   FontFamily  fontFamily(L"Times New Roman");
   Font        font(&fontFamily, 24, FontStyleRegular, UnitPixel);
   
   // Create a StringFormat object, and set its hot key prefix.
   StringFormat stringFormat;
   stringFormat.SetHotkeyPrefix(HotkeyPrefixShow);

   // Get the hot key prefix from the StringFormat object.
   HotkeyPrefix hotkeyPrefix = stringFormat.GetHotkeyPrefix();

   // Create a second StringFormat object with the same hot key prefix.
   StringFormat stringFormat2;
   stringFormat2.SetHotkeyPrefix(hotkeyPrefix);

   // Use the second StringFormat object in a call to DrawString.
  graphics.DrawString(
      L"This &text has some &underlined characters.", 
      43,  // string length
      &font, 
      RectF(30, 30, 160, 200), 
      &stringFormat2, 
      &solidBrush);

   // Draw the rectangle that encloses the text.
   Pen pen(Color(255, 255, 0, 0));
   graphics.DrawRectangle(&pen, 30, 30, 160, 200);
}

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP, Windows 2000 Professional [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 gdiplusstringformat.h(Gdiplus.h 포함)
라이브러리 Gdiplus.lib
DLL Gdiplus.dll

추가 정보

HotkeyPrefix

StringFormat