Delphi Programming / Object Pascal
サイトのトップページへ リンクのページへ ロゴマーク
[掲載 2003年07月20日] [更新 2010年04月25日] 均等割付グラデーションボタンコンポーネント
   
均等割付グラデーションボタンコンポーネント
プロパティ
動作確認等 図は Windows 7 U64(SP1) + Delphi XE(UP1) Pro で作成





凡例  published
 public
 ReadOnly



主なもの


主に本コンポーネント特有のプロパティの説明です.

 ButtonStyle TplButtonStyle ボタンスタイルを以下から選択する
bsNormal      普通のボタン風(デフォルト)
bsFlat       フラットなタイプ
bsFlatNoFrame    フラットで枠なし
bsRoundRect     角が丸いタイプ
bsRoundRectNoFrame 角が丸くて枠線なし
 CaptionA TplBtnCaption 1 行目のキャプションプロパティ
 CaptionB TplBtnCaption 2 行目のキャプションプロパティ
 CaptionLineSpace Integer 2 つのキャプションの行間スペース
 CaptionTop Integer 1 行目のキャプションの表示開始上端位置
 CaptionVertCenter Integer True にすると,キャプション文字列を強制的に上下中央に表示する
 FlatFrameType TplBtnFrameType ボタンのスタイルが bsFlat の時の枠線の種類をリストから以下の値を選択する
bffFlat  フラットな枠線(デフォルト)
bffEtched 周囲がへこんだ枠線
bffBump  周囲が盛上がった枠線
 Gradation Boolean True の時グラデーション,False の時は Color プロパティの色になる
 GradBeginColor TColor グラデーションの開始色でボタン上端の色
 GradEndColor TColor グラデーションの終了色でボタン下端の色
 HasFocus Boolean True にするとフォーカスを持つコントロールとなる
True の時は,Enabled プロパティが False の時にキャプションの文字列がエンボス効果の状態となり,画像は淡いモノクロ濃淡画像となる
 Image TplBtnImage ボタンに表示するイメージのプロパティ
 DisableImage Boolean この値を True にすると,HasFoces の値に関係なくEnabeld が False の時に Disable な表示になる
デフォルトはFalse
 Color TColor ボタン表面の色.
Gradation プロパティが False の時だけ有効
 ParentColor Boolean True にするとボタン表面の色が親コントロールと同じ色になるが,Gradation プロパティが False の時だけ有効




キャプションのプロパティ


キャプションはクラス型のプロパティで,CaptionA, CaptionB の 2 行あります.縦方向の位置,行間スペースについては上表で説明しています.


図1
各キャプションのプロパティ

 Caption String キャプションの文字列
 Alignment TplBtnAlignment 横方向のアライメント
リストから以下の値を選択する
taCenter の時は Left, Right の値は無効となる
taLeft  左寄せ
taRight  右寄せ
taCenter 中央寄せ(デフォルト)
taEvern  均等割付
 Left Integer 左端の表示オフセット
 Right Integer 右端の表示オフセット




イメージのプロパティ


クラス型プロパティです.イメージはビットマップとアイコンしか表示できません.


図2
イメージのプロパティ

 Picture TPicture ダイアログを表示して画像を選択可能
 Top Integer 表示開始上端位置
 Left Integer 表示開始左端位置
 HorzCenter Boolean True にすると強制的に左右中央に配置する
 VertCenter Boolean True にすると強制的に上下中央に配置する
 TransParent Boolean Bitmap または Icon の一部を透過表示する
Icon の場合は Icon の透過指定
Bitmap の場合は tmAuto (左下のピクセルの色) で処理

[注] Icon は透過指定していないものもあるが,画像処理用のアプリには,この指定ができるものもある
 Visible Boolean False で非表示




実行時のイメージの設定


実行時 (動的) にイメージ (Image の Pictrue) を設定するには次のように,Pictrue に直接代入してください.代入以外で設定した場合は,何らかの再描画が行われないと結果が反映されません.


リスト1
アイコンをファイルから読み出して設定
procedure TForm1.Button1Click(Sender: TObject);
var
  AIcon : TIcon;
begin
  AIcon := TIcon.Create;
  try
    AIcon.LoadFromFile('Printer.ico');
    plButton1.Image.Picture := TPicture(AIcon);
  finally
    AIcon.Free;
  end;
end;


リスト2
イメージをなしにする
procedure TForm1.Button3Click(Sender: TObject);
begin
  plButton1.Image.Picture := nil;
end;