16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"TStringGridに HideSelection追加"
この発言は #00043 Fermion さんのStringGrid に Focusがないときの反転色 に対するコメントです
#43 Fermion さん、こんにちは。yoneです。^_^
■説明
TStringGridにHideSelectionプロパティーを追加してみました。
■サンプルコード
//=================================================================
{...略...}
type
TSG2_ = class(TStringGrid)
private
FHideSelection: boolean;
protected
procedure DrawCell(ACol, ARow: Longint; ARect: TRect;
AState: TGridDrawState); override;
public
constructor Create(AOwner: TComponent); override;
published
property HideSelection:boolean read FHideSelection write
FHideSelection default true;
end;
procedure Register;
implementation
constructor TSG2_.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
HideSelection:= true;//デフォルトプロパティーの設定
end;
procedure TSG2_.DrawCell(ACol, ARow: Longint; ARect: TRect;
AState: TGridDrawState);
begin
if FHideSelection //HideSelectionがtrueで
and(TForm(owner).ActiveControl<>self )//focusが自分に無くて
and(gdSelected in AState) then begin//選択範囲内の描画の時
//CanvasのBrushとFontの色を選択範囲以外のそれに合わせる
Canvas.Brush.Color:= Color;
Canvas.Font.Color:= Font.Color;
end;
inherited DrawCell(ACol, ARow, ARect, AState);
end;
procedure Register;
begin
RegisterComponents('Samples', [TSG2_]);
end;
end.
ではでは(^ー^)/~~。・゚★・yone with Delphi 2.0j(DeskTop)
OS:WIN95/ ブラウザIE4.0/EmNifty 機種:NEC-PC9821-V7/ RAM:24MB/ HD:2GB/
Original document by yone 氏 ID:(CYG03724)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|