フォーラム


ゲスト  

ようこそ ゲスト さん。このフォーラムに投稿するには 登録が必要です。

ページ: [1]
トピック: TDataModule にコンポーネント載せられないんですけど!(Delphi XE2 以降)
DEKO
管理者
投稿数: 2690
TDataModule にコンポーネント載せられないんですけど!(Delphi XE2 以降)
on: 2013/04/15 20:41 Mon

データモジュール (TDataModule) の ClassGroup 擬似プロパティの初期値は System.Classes.TPersistent になっていて、例えば VCL フォームアプリケーションを作った場合、ここを "Vcl.Controls.TControl" に変更しないと ImageList とかが載せられません。

VCL フォームアプリケーションを新規作成した時点の ClassGroup の初期値はクロスプラットフォーム用なので、FireMonkey に存在しない ImageList とかが載せられないという事態に陥ります。

では、既存のプロジェクトを読み込ませた場合にどうなるかというと、"ClassGroup 擬似プロパティは空になりますが、コンパイルはそのまま通ります"…なお、新規でプロジェクトを作成した場合にはここを空にする事はできません。トラブルを避けるため、既存のプロジェクトを読み込ませた場合には ClassGroup 擬似プロパティを "Vcl.Controls.TControl" に設定しておいた方がいいかもしれませんね。

ClassGroup を変更してもツールパレットやコンポーネントツールバーが変わらない?そんな時には一旦他のフォームを選択してから DataModule を選択してみましょう。

See Also:
[TDataModule の ClassGroup 疑似プロパティ (DocWiki)]
http://docwiki.embarcadero.com/RADStudio/ja/TDataModule_%E3%81%AE_ClassGroup_%E7%96%91%E4%BC%BC%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3

[C++Builder/Delphi XE2 で DataModule 上に BDE コンポーネントを配置するには (EDN)]
http://support.embarcadero.com/jp/article/42434

ページ: [1]
WP Forum Server by ForumPress | LucidCrew
バージョン: 1.7.5 ; ページロード: 0.023 sec.