如何取得constant value? |
尚未結案
|
gloria.hk
一般會員 發表:18 回覆:17 積分:7 註冊:2005-01-07 發送簡訊給我 |
各位先進: 我的程式裡有許多 constant values, 如:
unit MessageStrings;
interface const
Str1 = 'Login Failed';
Str2 = 'Wrong Password';
...
Str9999 = 'database error'; implementation function GetErrorMsg(AErrorCode: String): String;
begin
//如果AErrorCode = 'str1', 我可以怎樣回傅相對的value 'Login Failed'?
end; end. ---
http://gloriaho.blogspot.com
|
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
|
gloria.hk
一般會員 發表:18 回覆:17 積分:7 註冊:2005-01-07 發送簡訊給我 |
|
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi gloria.hk,
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, TypInfo, StdCtrls; type TMessage = (str1,str2,str3,str4); TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); function GetErrorMsg(AErrorCode: String): String; var re : String; begin case TMessage(GetEnumValue(TypeInfo(TMessage),AErrorCode)) of str1 : re := 'Login Failed'; str2 : re := 'Wrong Password'; str3 : re := 'Error Message3'; str4 : re := 'Error Message4'; else re := 'Not defined !!'; end; Result := Re; end; begin showMessage(GetErrorMsg(edit1.Text)); end; end.---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |