Hallo und ein frohes neues Jahr!
Mein Problem hat sich durch den folgenden Link erledigt:
http://www.delphi-groups.de/YaBBSe/i...=22383;start=0
Der Autor hat das Problem mit verbundenen Zellen sehr gut gelöst
Wer den kompletten Quelltext anschaut, sollte die folgende Änderung beachten:
Delphi-Quellcode:
function CellRectEx(Stringgrid:tstringgrid;Acol,Arow:integer):trect;
var i,x,y:integer;
arect,brect:Trect;
begin
//Zellenposition mit Cellrect ermitteln
brect:=Stringgrid.CellRect(acol,arow);
if EqualRect(brect,classes.rect(0,0,0,0))=false then
begin
if (StringGrid.ColWidths[aCol] > (bRect.Right-bRect.Left)) //sichtbarer Teil der Zelle
then bRect.Right := bRect.Left+StringGrid.ColWidths[aCol];//kleiner als Zellenbreite??
result:=brect;
end
else.....
Die kommentierte If-Anweisung ist eine Ergänzug von mir, damit auch die eventuell nur teilweise sichtbare letzte rechte Spalte beim Scrollen korrekt gezeichnet wird.
Viel Spass beim Ausprobieren
fafnir