Formating cells - TAdvStringGrid & TAdvGridExcelIO

I'm using TAdvStringGrid, TAdvGridCSVPager and TAdvGridExcelIO for loading CSV and Excel files. I need to format some columns. Is it possible to format columns from general numbers to percentages, fractions, dates, times, etc?

Thank you in advance for your help!

I'm trying to format float to string. This works as expected but it is terribly slow when converting up to 10.000 records. For example, I need to convert this '2,32101015117744E15' to this '2321010151177440'.

Screen->Cursor = crHourGlass;
Grid->BeginUpdate();
for(int i=0; i<Grid->SelectedCellsCount; i++)
  {
    int iX = Grid->SelectedCell[ i ].X;
    int iY = Grid->SelectedCell[ i ].Y;
    Grid->Cells[ iX ][ iY ] = FloatToStrF(Grid->Cells[ iX ][ iY ].ToDouble(), ffFixed, 32, 0);
  }
Grid->EndUpdate();
Screen->Cursor = crDefault;


Can someone give me some advise how to speed up this procedure? Thank you in advance for your help.

Have you considered implementing the OnGetFloatFormat event?

I was not familiar with this event. Do you have an example?

This is explained at page 127 of the PDF developers guide:

http://www.tmssoftware.com/site/manuals/TMS%20TAdvStringGrid%20Developers%20Guide.pdf

Thank you. I found the solution. Below you see my code.

void __fastcall TForm1::GridGetFloatFormat(TObject *Sender, int ACol, int ARow, bool &IsFloat, UnicodeString &FloatFormat)
{
  FloatFormat = "%.0f";
}