![]() |
Stringgrid-Zellen rechtsbündig drucken
Hi,
hänge hier an einer Sache fest : in einem Stringgrid werden Zahlen immer rechtsbündig dargestellt. Bei Reals wird auch bei einer Eingabe "10" immer "10,00" angezeigt. Dann wird noch manchmal etwas grafisches angezeigt usw. Alles im OnDrawCell. Jetzt wollte ich ein Grid drucken, aber da ist nichts mehr mit abschließenden Nullen. Jetzt könnte ich ja dasselbe wie im OnDrawCell wieder machen. Muß das aber sein ? Ich brauche nur den reinen Text der angezeigten Zelle und zwar nach der Behandlung im OnDrawCell. Den Zelleninhalt nach der Umrechnung wieder neu anzuzeigen ists ja wohl auch nicht. Das landet ja dann wieder alles im DrawCell. Ich will also mit einer Schleife das Grid durchgehen und die Zellinhalte so drucken, wie sie aussehen. Komme ich irgendwie nur an den Zellentext ran, ohne wieder formatieren zu müssen ? |
Re: Stringgrid-Zellen rechtsbündig drucken
Hallo,
schau Dir das mal an, eventuell passt das :arrow: ![]() |
Re: Stringgrid-Zellen rechtsbündig drucken
Thx, Lannes. Aber das ist genau verkehrt rum. Ich brauche nur den Text und nicht die angezeigte Grafik, allerdings so wie er im OnDrawCell bereits formatiert wurde. Ich muß auf die einzelnen Zellen zugreifen und sie drucken, so wie sie auch auf dem Bildschirm zu sehen sind. Zumindest aber die Nachkommastellen.
|
Re: Stringgrid-Zellen rechtsbündig drucken
Hallo,
"verkehrt rum" würde ich nicht sagen, eher zuviel an Ausgabeinformationen. Wenn die Gitterlinien ausgeblendet und die Funktionsvariablen richtig gesetzt werden, hast Du nur noch die reinen Zellinhalte. Ruf meine Funktion mal so auf:
Delphi-Quellcode:
Es gibt aber ein Problem :? ,
var Bmp : TBitmap;
begin Bmp := TBitmap.Create; StringGrid1.Options := StringGrid1.Options - [goVertLine,goHorzLine];//<---- if GridToBmp(StringGrid1,False,Bmp,0,clBlack) then begin Image1.Picture.Bitmap.Assign(Bmp); //oder //Bmp.SaveToFile('C:\Temp\StringGrid.bmp'); //Clipboard.Assign(Bmp); //in uses clipbrd einbinden !!! end; StringGrid1.Options := StringGrid1.Options + [goVertLine,goHorzLine];//<---- Bmp.Free; end; wird in OnDrawCell auf gdFixed oder FixedCols/FixedRows reagiert, ändert sich das Zeichnen der Fixed- Spalten/Zeilen wenn die Funktion, gesteuert über die Variable Fixed: Boolean, temporaer die Fixed- Spalten/Zeilen entfernt. Das kann aber über eine Veränderung der OnDrawCell-Ereignisbehandlung angepasst werden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz