Перевести значения перечисляемого типа в строкиDelphi , Синтаксис , ПреобразованияПеревести значения перечисляемого типа в строки
Оформил: DeeCo { You obtain a string equivalent of an enumerated type value using the GetEnumName function: } function GetEnumName(TypeInfo: PTypeInfo; Value: Integer): string; { The first argument is a pointer to the enumerated type’s RTTI information, and the second argument is the ordinal position of the value within the enumerated type. GetEnumName returns a string representing the corresponding enumerated type value. You get the ordinal position of an enumerated type value based on a string using the GetEnumValue function: } function GetEnumValue(TypeInfo: PTypeInfo; const Name: string): Integer; { Like GetEnumName, the first argument is a pointer to the RTTI information. The second argument is a string that represents the enumerated type value. This function returns the ordinal position of the corresponding value. } // Example: // Declare a custom type: type TOurType = (otFirst, otSecond, otThird, otForth, otFifth, otLast); var Form1: TForm1; implementation {$R *.DFM} uses TypInfo; procedure TForm1.Button1Click(Sender: TObject); var OT: TOurType; FT: TFontStyle; begin // Enumerate TFontStyle values // Zeigt alle TFontStyle Werte an Memo1.Lines.Add('The TFontStyle values:'); for FT := Low(TFontStyle) to High(TFontStyle) do Memo1.Lines.Add(GetEnumName(TypeInfo(TFontStyle), Ord(FT))); // Enumerate our custom TOurType values // Werte vom Benutzerdefiniertern Typ TOurType auflisten. Memo1.Lines.Add('The TOurType values:'); for OT := Low(TOurType) to High(TOurType) do Memo1.Lines.Add(GetEnumName(TypeInfo(TOurType), Ord(OT))); end; Код-снippet на языке Delphi демонстрирует, как конвертировать значения типов с перечислением в строки с помощью функции Вот разбивка кода:
Вывод будет следующим: "Значения TFontStyle: fsBold fsItalic fsUnderline fsStrikeOut" "Значения TOurType:
otFirst
otSecond
otThird
otForth
otFifth
otLast"
Этот пример демонстрирует, как использовать В статье описывается использование функций GetEnumName и GetEnumValue для преобразования значений перечисляемых типов в строки и наоборот, а также примеры их использования в коде программы. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Преобразования ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |