2016-05-09 6 views
0

私はDelphiでプログラミングしていますが、行数が1であっても常に表示される垂直スクロールバーを使用したいと思います(DefaultDrawingオプションはアクティブではありません。細胞)。StringGridのスクロールバーが常に表示されます

誰でも手伝ってもらえますか?

+1

コントロールをカスタマイズする必要があります。または別のコントロールを使用してください –

+0

好奇心のちょうど、私はなぜ尋ねることができますか?それはあなた自身と細胞を引き寄せることと関係がありますか? –

+0

@TomBrunberg通常は、文字列グリッド内のカラムの理想的なデフォルトの幅を見つけようとします。スクロールバーの幅を考慮してスクロールバーの幅を考慮すると、スクロールバーがないとひどく見えます。 (されて、それを行った) – dummzeuch

答えて

0

あなたはTStringGridを挿入し、Resizeメソッドをオーバーライドし、そのようにできます。

unit Unit1; 

interface 

uses 
    Winapi.Windows, System.Classes, Vcl.Controls, Vcl.Forms, Vcl.Grids; 

type 
    TStringGrid = class(Vcl.Grids.TStringGrid) 
    protected 
    procedure Resize; override; 
    end; 

    TForm1 = class(TForm) 
    StringGrid1: TStringGrid; 
    end; 

implementation 

{$R *.dfm} 

{ TStringGrid } 

procedure TStringGrid.Resize; 
begin 
    inherited Resize; 
    ShowScrollBar(Handle, SB_VERT, True); 
end; 

end. 

設定アンカーとのマイナーなテストはここで良い結果が得られます。

関連する問題