uses Dialogs; type Colors = (RED,BLUE,GREEN);var S: string; begin S := 'BLUE has an ordinal value of ' + IntToStr(Ord(BLUE)) + #13#10; S := S + 'The ASCII code for "c" is ' + IntToStr(Ord('c')) + ' decimal'; MessageDlg(S, mtInformation, [mbOk], 0); end;
type Day=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday); const DayNames : array[Day] of string = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');var Today:day;Today:=Tuesday; ShowMessage(DayNames[Today]); 如何显示这个Today值?以便验证值正确?
有RTTI信息啊!TMD,真是的………… 下面的方法就非常好了,唯一的问题是,你不能再定义枚举类型的时候,指定索引。 uses TypInfo;type TDay=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday);procedure TForm1.Button1Click(Sender: TObject); var T:TDay; begin T:=Wednesday; ShowMessage(GetEnumName(TypeInfo(TDay),integer(T))); end;
procedure TForm1.Button1Click(Sender: TObject); type TDay=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday); var T : TDay; S : string; begin S := ADODOnce.FieldByName('Weekday').Asstring; // now s is 'Wednesday'; // 此时怎么把这个S与T关联起来呢?? end;
type Colors = (RED,BLUE,GREEN);var S: string;
begin
S := 'BLUE has an ordinal value of ' + IntToStr(Ord(BLUE)) + #13#10;
S := S + 'The ASCII code for "c" is ' + IntToStr(Ord('c')) + ' decimal';
MessageDlg(S, mtInformation, [mbOk], 0);
end;
Day=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday);
const
DayNames : array[Day] of string =
('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');var
Today:day;Today:=Tuesday;
ShowMessage(DayNames[Today]); 如何显示这个Today值?以便验证值正确?
下面的方法就非常好了,唯一的问题是,你不能再定义枚举类型的时候,指定索引。
uses TypInfo;type
TDay=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday);procedure TForm1.Button1Click(Sender: TObject);
var
T:TDay;
begin
T:=Wednesday;
ShowMessage(GetEnumName(TypeInfo(TDay),integer(T)));
end;
case ord() of
0:
1:
...
end;
不过,对于软件的发行版本,总觉得用RTTI不太合适
同意用: Kingron(单身走我路……) 的方法!TO:Kingron
伙计,几个月不见就三个红星了!佩服佩服!
type
TDay=(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday);
var
T : TDay;
S : string;
begin
S := ADODOnce.FieldByName('Weekday').Asstring;
// now s is 'Wednesday';
// 此时怎么把这个S与T关联起来呢??
end;