Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   DBGrid + Vertical ScrollBar (https://www.delphipraxis.net/61567-dbgrid-vertical-scrollbar.html)

gluglu 23. Jan 2006 10:37


DBGrid + Vertical ScrollBar
 
Hallo !

Möchte gerne mein Beitrag leisten zur Diskussion: DBGrid und vertical scrollbar ausschalten
(benuzte Delphi 2006 + Interbase 7.5 + TIBQuery's)

* DBGrid1 definieren

* TPanel definieren, z.B. PanelVScrollBar1, mit Grösse und Position gleich der vertikalen scrollbar des DBGrid1, und selbe Farbe wie DBGrid1. Zusätzlich Visible := True und 'bring to front' gegenüber DBGrid1 (so dass sogar während Design-Time das Vertical Scrollbar des DBGrid1 nicht mehr zu sehen ist).

* In Form.OnPaint, oder mein Fall Frame.OnEnter :
Delphi-Quellcode:
procedure TFrame1.FrameEnter(Sender: TObject);
begin
  ...
  CheckVScrollBar1;
  ...
end;
* Prozedur CheckVScrollBar1 wie folgt definieren :
Delphi-Quellcode:
procedure TFrame1.CheckVScrollBar1();
begin
  with DataModule1.IBQueryCheck do begin
    SQL.Clear;
    SQL.Add('Select Count(*) from TABLE1');
    Prepare;
    Open;
    If FieldByName('Count').Value > Max_Rows then
      PanelVScrollBar1.Visible := False
    else
      PanelVScrollBar1.Visible := True;
  end;
end;
Max_Rows kann entweder als globale Variable definiert werden oder direkt mit der entsprechenden Zahl ausgetausch werden, denn (...meistens) wird das DBGrid1 nicht während run-time umdimensioniert.

* Beim einfügen, löschen, oder sogar beim editieren (falls notwendig), erneut CheckVScrollBar1 aufrufen.

... et voilà :dance:

Grüsse !!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz