DelphiのRCファイルで文字列テーブルを使用する方法
原著者: wangzhidong (Steven Bob) 日時: 2002 年 3 月 25 日月曜日。 まずメモ帳またはリソース ワークショップ 4.5 を使用して RC ファイルを作成します。構造は次のとおりです
| /************************************************ ***** ***************************rcdemo.rcBorland Resource Workshop 作成*********** ***** ******************************************** ****** ***********/#include "urcdemo.pas"STRINGTABLE {IDS_HELLO, "お会いできて嬉しいです。" IDS_RC, "このプログラミングは %s によって作成されました。" } |
次に、BRCC.EXE または BRCC32.exe を使用して rcdemo.rc を rcdemo.res ファイルにコンパイルし、rcdemo.res の名前を rcdemo.rc ファイルに変更します。 Resource Workshop 4.5 を使用する場合、PAS ユニット ファイルが生成されます。この場合、urcdemo.pas の内容は次のようになります。
| (*************************************************) ***** ***************************urcdemo.pasProduced by Borland Resource Workshop*********** ******* ****************************************** ******** ***********)unit urcdemo;interfaceconst IDS_HELLO = 2;実装終了。 |
このテクノロジを使用すると、文字列ストレージの問題や、エラー処理におけるプログラムのローカリゼーションの問題を解決できます。例:
| ユニット ufmRCDemo; インターフェイスは Windows、メッセージ、SysUtils、バリアント、クラス、グラフィック、コントロール、フォーム、ダイアログ、StdCtrls を使用します。タイプ TForm1 = class(TForm) GroupBox1: TGroupBox; Button2: TButton; ; Button4: TButton プロシージャButton1Click(Sender: TObject); プロシージャ Button2Click(Sender: TObject); プロシージャ Button3Click(Sender: TObject); private { プライベート宣言 } public { パブリック宣言 } end;var Form1: TForm1; 実装は urcdemo を使用します;{$R rcdemo.rc}{$R *.dfm}{Windows を使用するAPI}プロシージャ TForm1.Button1Click(Sender: TObject);var arystr: char の配列 [0..255];begin windows.LoadString(hInstance, IDS_RC, arystr, sizeof(arystr)); end;procedure TForm1.Button2Click(Sender: TObject);var arystr: 配列 [0..255] char;begin windows.LoadString(hInstance, IDS_Hello, arystr, sizeof(arystr)); ShowMessage(arystr);end;{Delphi ネイティブ関数を使用する}プロシージャ TForm1.Button3Click(Sender: TObject);begin ShowMessage(LoadStr(IDS_Hello)) ;終了;プロシージャ TForm1.Button4Click(送信者: TObject);開始ShowMessage(LoadStr(IDS_RC));終了;終了。 |
注: 16 ビット形式と 32 ビット形式の違い。インスタンスのダウンロード: http://www.megspace.com/computers/coreware/