AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi OnDrawCell eines StringGrids in DLL auslagern...
Thema durchsuchen
Ansicht
Themen-Optionen

OnDrawCell eines StringGrids in DLL auslagern...

Ein Thema von dopeline · begonnen am 13. Feb 2004
Antwort Antwort
dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#1

OnDrawCell eines StringGrids in DLL auslagern...

  Alt 13. Feb 2004, 15:46
Hallo!

ich habe ein problem:

ich habe folgendes im OnDrawCell-Ereignis des StringGrids stehen: (durch diesen code wird die markierte zeile etwas schöner dargestellt, als sonst 8) )
Delphi-Quellcode:
procedure TFormHaupt.SGPDrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var Grid: TStringGrid;
    oldalign : word;
begin

 begin
  Grid := Sender as TStringGrid;

   if gdSelected in State then
    begin
     Grid.Canvas.Font.Color := clBlack;
     Grid.Canvas.Brush.Color := RGB(215, 238, 255);
     Grid.Canvas.Font.Style := [fsBold];
    end else Grid.Canvas.Brush.Color := Grid.Color;
     Grid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Grid.Cells[ACol, ARow]);
 end;
begin
 if (aRow = 0) and not (gdFixed In State) then
  begin
   with (sender as tstringgrid).canvas do
    begin
      Pen.Color := clBlack;
      Pen.Width := 2;
      Pen.Style := psSolid;
      MoveTo( rect.left-1, rect.bottom );
      Lineto( rect.right-1, rect.bottom );
    end;
  end;
end;
if (aRow=0) then
 begin
  Grid.canvas.font.style := Grid.canvas.font.style + [fsbold];
 end;
 if (aRow=0) then
  begin
   Grid.canvas.font.Size:= 10;
   Grid.Canvas.Brush.Color := RGB(238, 238, 238);
   Grid.Canvas.FillRect(Rect);
  end;

  begin
  oldalign:=settextalign(Grid.canvas.handle,ta_left);
  Grid.canvas.textrect(rect,rect.left+2,rect.top+2, Grid.cells[aCol,aRow]);
  settextalign(Grid.canvas.handle,oldalign);
  end;
end;
da ich viele stringgrids habe und ich sowieso schon einige prozeduren in einer dll ausgelagert habe, möchte ich dieses ereignis auch in die dll verschieben. allerdings funktioniert das nicht so wirklich....

Hat jemand einen Rat?


Gruß, dopeline
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:37 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