HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

TStringGrid cellái tartalmának igazítása jobbra, balra, középre


Példaprogram letöltése

9354 bájt

A TStringGrid komponens egyik hiányossága, hogy nem képes a benne tárolt szövegek igazítására, így azok mindig csak balra igazítva jelennek meg. Vagy mégsem?
A mellékelt példaprogram megnyitása előtt az AlignStringGrid.pas-ban lévő komponenst telepítenie kell a Delphi alá.

A komponens Alignment property-én keresztül írhatjuk elő, hogy a celláinak szövege milyen irányba legyen igazítva.

Ezt pedig úgy érjük el, hogy felülírjuk a DrawCell eljárását a komponensnek, mely az egyes cellák megjelenítéséért felelős. Itt pedig mi magunk végezzük el a szöveg kiírást. Ehhez a DrawText függvényt használjuk fel, ahol előírhatjuk, hogy a kiírt szöveg milyen irányba legyen igazítva.
procedure TAlignStringGrid.DrawCell(ACol, ARow: Integer; 
     ARect: TRect; AState: TGridDrawState);
const
  op: array[TAlignment] of DWORD=(DT_LEFT, DT_RIGHT, 
     DT_CENTER);
var
  s: string;
begin
  with Canvas do begin
    if gdFixed in AState then begin
      inherited;
    end else begin
      s:=Cells[ACol, ARow];
      InflateRect(ARect, -2, -2);
      DrawText(Handle, PChar(s), Length(s), ARect,
         op[FAlignment]+DT_SINGLELINE+DT_VCENTER);
    end;
  end;
end;


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2001 évkönyv 143. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |