Hola eennzzoo.
Creo que usar TStrings te va a simplificar la tarea:
Código:
...
TStrings *TS = new TStringList;
int curReg = 0;
void __fastcall TForm1::ShowRegister(const int pp)
{
EditDNI->Text= TS->Strings[pp];
EditNombre->Text= TS->Strings[pp+1];
EditApellido->Text= TS->Strings[pp+2];
}
void __fastcall TForm1::btnOpenFileClick(TObject *Sender)
{
if (OpenDialog1->Execute()) {
TS->LoadFromFile(OpenDialog1->FileName);
ShowRegister(0);
}
}
void __fastcall TForm1::btnBuscarClick(TObject *Sender)
{
for(int i=0; i< TS->Count; i+=3)
if (Trim(EditBuscar->Text) == Trim(TS->Strings[i]))
ShowRegister(i);
}
void __fastcall TForm1::btnNextClick(TObject *Sender)
{
if (curReg < TS->Count-4) {
curReg += 3;
ShowRegister(curReg);
}
}
void __fastcall TForm1::btnPrevClick(TObject *Sender)
{
if (curReg >= 3){
curReg -= 3;
ShowRegister(curReg);
}
}
También le agregué dos botones para desplazarte por los registros hacia adelante y hacia atrás.
Saludos