component

home
更新日:2004/11/09

DynCtrlProp

ダウンロード
収録コンポーネント

	TDynCtrlProp
	TPropIniFile

登録ファイル

	DynCtrlProp.pas
	DynCtrlSizeDlg.pas
	DynCtrlSizeDlg.dfm
	HOOKINST.PAS
	PropIniFiles.pas

インストール

  DynCtrlPropPack.dpkを開き、インストールしてください。

コンポーネント概要

TDynCtrlProp

 実行時にコントロールのプロパティを変える事が出来ます。

 変更できるプロパティは、背景色、フォント、位置、サイズ、Items(TStrings)
 になります。
 変更したコントロールのクリップボードへコピー、変更したEXEの書き出し
 を行えます。
  Halbow資料館のフック関数のインスタンス化を参考にさせていただきました。
  Grahame Marsh氏のHOOKINST.PASを使用しています。

使用方法

 TDynCtrlPropをフォームに置き、コンパイルすれば使用できます。
 CTRLキーを押しながら右クリックするとその位置のコントロールを変更できます。
 EnabledプロパティをFalseに設定すれば右クリックが無効になります。
 マウスフック、実行時型情報、コンポーネントのストリーム出力を使用しています。


TPropIniFile

 PropIniFileに登録したコンポーネントのプロパティを自動でINIファイルへ変換します。

 登録できるプロパティは整数型、文字型、集合型、浮動小数点型、文字列型、
 バリアント型、列挙型、Int64型になります。
 Object型などは登録されていても無視されます。


使用方法

 TPropIniFileをフォームに置き、オブジェクトインスペクタからPropIniItems
 プロパティを開きます。
 開いたウインドウを右クリックして追加を選び、オブジェクトインスペクタから
 Componentを入力します。
 Propertysを開いて、登録するプロパティ名を書き込みます。
 TPropIniFile.FileNameにINIファイル名を入力します。
 WriteメソッドでINIファイルへ書き出し、ReadメソッドでINIファイルから読み込みます。
 読込後は自動でコントロールに値が設定されます。

 DefaultStringプロパティはINIファイルから読み込み失敗の際に使用する
 デフォルト文字列です。
 詳細はTIniFile.ReadStringを参照してください。
 DefaultStringとINIファイルから読み込んだ文字列が同一であれば、その値は
 コントロールに反映されません。

TDynCtrlPropのEXE書き出しは、EXEを壊す可能性があるためバックアップをお勧めします(コピーに書き出すけど)。
各ポップアップメニュー項目のVisibleプロパティでもつける予定でしたが、やっていません。
TDynCtrlPropとTPropIniFileを2つをあわせれば実行時にプロパティをいじれて、INIファイルへの書き出しがソースコードを書かずにできますが、TPropIniFileがFontを書き出せないので微妙に使いづらい。
実用性よりもRTTIの軽いサンプルとしてみてください。