unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids;
type
TForm1 =
class(TForm)
strgrdLottozahlen: TStringGrid;
procedure strgrdLottozahlenDrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
BitmapFeld,BitmapKreuz: TBitmap;
implementation
{$R *.dfm}
{Anfang: Funktion die überprüft ob eine "bestimmte" Spalte ausgewählt ist}
function IsCellSelected(StringGrid: TStringGrid; X, Y: Longint): Boolean;
begin
Result := False;
try
if (X >= StringGrid.Selection.Left)
and (X <= StringGrid.Selection.Right)
and
(Y >= StringGrid.Selection.Top)
and (Y <= StringGrid.Selection.Bottom)
then
Result := True;
except
end;
end;
{Ende: Funktion die überprüft ob eine "bestimmte" Spalte ausgewählt ist}
procedure TForm1.strgrdLottozahlenDrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
var
{Normale-Variablen}
i,j,n,m:Integer;
begin
BitmapFeld := TBitmap.Create;
BitmapFeld.LoadFromFile('
Bilder/LottoFeld.bmp');
BitmapFeld.TransparentColor := clWhite;
BitmapFeld.Transparent := True;
BitmapKreuz := TBitmap.Create;
BitmapKreuz.LoadFromFile('
Bilder/LottoKreuz.bmp');
BitmapKreuz.TransparentColor := clWhite;
BitmapKreuz.Transparent := True;
for n:= 1
to 7
do
for m:= 1
to 7
do
begin
If IsCellSelected(strgrdLottozahlen,n,m) = True
then
strgrdLottozahlen.Canvas.StretchDraw(strgrdLottozahlen.CellRect(n,m),BitmapKreuz);
end;
for i := 1
to 7
do
for j := 1
to 7
do
begin
strgrdLottozahlen.Canvas.StretchDraw(strgrdLottozahlen.CellRect(i,j),BitmapFeld);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
x,y,z:Integer;
begin
z:=0 ;
for x := 1
to 7
do
for y := 1
to 7
do
begin
z:= z+1;
strgrdLottozahlen.Cells[y,x] := IntToStr(z);
end;
end;
end.