クラスのフィールド名、プロパティ名を動的に知るには?

解決


しゅう  2003-03-09 01:32:25  No: 3114  IP: 192.*.*.*

クラスの持っているフィールド情報に合わせてデータベースを作成し、そのフィールド情報を保存してくれるコンポーネントを作ろうとしています。
  動的にクラスが持っているフィールド名やプロパティ名を調べてそのデータを読み書きするにはどうすればいいのでしょうか?

編集 削除
にしの  2003-03-09 04:45:17  No: 3115  IP: 192.*.*.*

Delphiのバージョンはなんでしょうか。
ファイル名や、定義の位置がバージョンによって違ったと思います。

Delphi5では、dsgnintf.pasに、TPropertyEditorとその派生クラスがあります。
これを使ってできると思います。

編集 削除
しゅう  2003-03-09 06:46:08  No: 3116  IP: 192.*.*.*

Delphi6 Enterprise + UPdata2 です。
usesにdsgnintfを入れると、
------------------------------------------------------------
[致命的エラー] Form_JuliusTime.pas(43): ファイル 'dsgnintf.dcu' が見つかりません
------------------------------------------------------------
となってしまうのですが、このpasはこれだけでは見れないのでしょうか?
Delphi6ではTPropertyEditorをヘルプで見ると、ユニットは
  DesignEditors  となっています。
これをusesに加えてもpasが見つからないと出てしまいます。
ファイルを検索しても見つからないのですが、
普通はそのpasは何処に入ってるのでしょうか。

編集 削除
しゅう  2003-03-09 08:06:40  No: 3117  IP: 192.*.*.*

見つかりました。
$(Delphi)\Source\ToolsApi
にあることがわかりました。
これでTPropertyEditorをつかって試してみます。
その上でわからないことがあったらまた投稿させていただきます。
にしのさん、どうもありがとうございました。

編集 削除
しゅう  2003-03-09 08:07:30  No: 3118  IP: 192.*.*.*

押し忘れ。

編集 削除