[ star13 @ 15.10.2002. 16:32 ] @
Objekt TDBGrid (Delphi) prilikom prikazivanja stavki iz datoteke na desnoj strani automatski otvara vertikalni scroll kada je broj prikazanih stavki veći od 1. Dakle, kada je 1 ili uopće nema stavki vertikalni scroll uklanja se automatski. Želim da verikalni scroll bude stalno prikazan bez obzira ima li stavki ili ne. Pokušao sam riješiti taj problem ali do sada bez uspjeha. Ima li netko već riješenje za to. Pokušao sam deriviranjem nove kontrole iz TDBGrid klase kako bi ubacio odgovarajući property. Međutim niti jedan property u vezi vertikalnog scrolla ne mogu ubaciti, kompilirati niti instalirati svoju komponentu jer prijavljuje grešku da kontrola ne postoji u osnovnoj klasi. Inače s izradom nekih drugih vlastitih komponentata takovih problema nema.
[ Rapaic Rajko @ 20.10.2002. 13:16 ] @
Ok, nije mi jasno zasto ti treba staticni VertScroll, ali pogledao sam kako to radi u VCL-u, i - resio tvoj problem. Evo ti kompletan kod komponenta koji sam nazvao TDBGridVertScroll (ti ga nazovi kako hoces, jasno). Sledi kod (koji naravno radi, probao sam ga):


unit DBGridVertScroll;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids;

type
TDBGridVertScroll = class(TDBGrid)
private
{ Private declarations }
protected
procedure Paint;override;
public
{ Public declarations }
published
{ Published declarations }
end;

procedure Register;

implementation

procedure TDBGridVertScroll.Paint;
begin
inherited Paint;
ShowScrollBar(Handle,SB_VERT,true);
end;

procedure Register;
begin
RegisterComponents('Samples', [TDBGridVertScroll]);
end;

end.