Hola.
Es que la nueva instancia creada para la búsqueda, no es igual a la buscada (aunque coincida el atributo Cadena), revisa si te sirve de este modo:
Código PHP:
int searchStrOnObj(TComboBox *CB, const AnsiString str)
{
int i;
AnsiString s = "";
for ( i = 0; s != str && i < CB->Items->Count; i++ )
s = ((TClase*)CB->Items->Objects[i])->Cadena;
return i-1;
}
Ejemplo de uso:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int inx = searchStrOnObj(ComboBox1, Query->FieldByName("Pais")->AsString);
TClase *cl = reinterpret_cast<TClase*>(ComboBox1->Items->Objects[inx]);
ShowMessage(ComboBox1->Items->Strings[inx]+"\n"+cl->Cadena);
}
Saludos