TFrame クラスを微調整 (プロパティ、メソッドなどを追加) していると、IDE が混乱し、フレームがヘッダー/キャプション、境界線などを備えたフォームであると認識しているかのように動作します。クラスは TFrame の子孫として宣言されます。これの原因、防止方法、および修正方法についてのアイデアはありますか?
Delphi 2007 Pro を使用しています。また、(重要な場合) 注意してください。TFrame の子孫は通常、設計時パッケージを介して IDE に (つまり、パレット上に) 登録されます。
後で: 追加の「詳細」: 現時点でこの問題が発生しているフレームは、視覚的には非常に基本的な TFrame です (真新しい TFrame からの変更はサイズと背景色のみです)。
クラス宣言は次のとおりです。
TBasePanel = class(TFrame)
private
FPanelManager: TPanelManager;
procedure SetPanelManager(const Value: TPanelManager);
protected
procedure Connect; virtual; abstract;
procedure Disconnect; virtual; abstract;
procedure Refresh; virtual;
procedure Requery; virtual; abstract;
published
property PanelManager: TPanelManager read FPanelManager write
SetPanelManager;
このフレームは、他の多くの基本クラスとして使用されます。私は通常、EXE プロジェクトの一部としてではなく、関連するフォームを開いた状態などで、それが属する BPL プロジェクトから直接編集しています (これらのフレームはすべてパレットにインストールされるため)。
また、「ツール」→「オプション」で「埋め込みデザイナー」にチェックを入れます。
すべての DFM ファイルも、バイナリではなくテキストとして保存しています (それが重要な場合)。