Главная страница | назад





Article #16873: Getting current record from a TDBGrid

 Question and Answer Database
FAQ1873C.txt Getting current record from a TDBGrid
Category :Database Issues
Platform :All
Product :C++Builder 1.x
Question:
How do you tell which record and which field of a TDBGrid is
current?
Answer:
Here is a method to keep track of the current column and row.
The following code in the method MyDBGridDrawDataCell updates
the variables Col and Row (which must not be local to the method)
every time the grid is redrawn. Using this code you can assume
that Col and Row point to the current column and row respectively.
int Col, Row;
void __fastcall TForm1::DBGrid1DrawDataCell(TObject *Sender,
const TRect &Rect, TField *Field, TGridDrawState State)
{
int RowHeight;
if (State.Contains(gdFocused)
{
RowHeight = Rect.Bottom — Rect.Top;
Row = (Rect.Top / RowHeight) — 1;
Col = Field->Index;
}
}
7/2/98 10:32:32 AM

Last Modified: 01-SEP-99