Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: StringGrid: Breite der vertikalen Scrollbar ermitteln

  Alt 23. Feb 2015, 14:12
Also ich habe es gerade getestet (XE7) und Delphi-Referenz durchsuchenTStringGrid.ClientWidth ändert sich, wenn die Scrollbar ins Spiel kommt.
Delphi-Quellcode:
type
  TForm1 = class( TForm )
    StringGrid1: TStringGrid;
    Label1: TLabel;
    Button1: TButton;
    procedure Button1Click( Sender: TObject );
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click( Sender: TObject );
begin
  StringGrid1.RowCount := StringGrid1.RowCount + 1;
  Label1.Caption := StringGrid1.ClientWidth.ToString;
end;
Allerdings muss man aufpassen, wenn man innerhalb eines StringGrid-Events auf diese Eigenschaft zugreifen möchte. Diese wird nämlich quasi zum Abschluss der gesamten Aktualisierung gesetzt und ist somit erst nach Abarbeitung der ganzen Events verfügbar.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (23. Feb 2015 um 14:14 Uhr)
  Mit Zitat antworten Zitat