Y volviendo a leer la sugerencia de ecfisa creí que había dado con la solución en:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i=0;i<10;i++)
ListBox1->Items->Add(TS->Strings[i]+ " - " +
((TClase*)(TS->Objects[i]))->Cadena);
}
pero algo no acabo de entender. Estoy trabajando sobre un ComboBox; al fin y al cabo los ítemes definidos no dejan de ser un TStringList. Lo cargo así:
Código PHP:
TClase *Clase;
Motivo->Items->Clear();
Query->Close();
Query->SQL->Text = "SELECT Literal, Codigo FROM Mensajes WHERE Texto IS NULL AND CHAR_LENGTH(TRIM(Codigo)) <> 3 ORDER BY Codigo";
Query->Open();
for (; !Query->Eof; Query->Next())
{
Clase = new TClase;
Clase->Cadena = Query->FieldByName("Codigo")->AsString;
Motivo->Items->AddObject(Query->FieldByName("Literal")->AsString + " (" + Clase->Cadena + ")", ((TObject *)Clase));
}
delete Clase;
sin problema. Pero al tratar de rescatar el valor del TObject, para ejecutar un query, hago esto:
Código PHP:
Clase = new TClase;
Query->ParamByName("Devuelto")->AsDateTime = StrToDate(Devuelto->Text);
Query->ParamByName("Motivo")->AsString = ((TClase *)Motivo->Items->Objects[Motivo->ItemIndex]->Cadena);
y el compilador me da un error
E2316 'Cadena' is not a member of 'TObject' en esa última línea de código (
Query->ParamByName("Motivo")->AsString). ¿Qué me estoy saltando?