Pegue múltiples cadenas en TMemo en C++Builder.
Tengo un vector de Strings de un control TListView. Quiero copiarlo al portapapeles y luego pegarlo en un control TMemo de tal manera que cada línea de la lista esté en una línea separada en el TMemo. Todo lo que he intentado hasta ahora se pega en una sola línea. Pero copiar/pegar múltiples líneas dentro del propio TMemo funciona perfectamente. ¿Algún idea?
¡Gracias!
davy.ai
Solución para copiar y pegar varias líneas desde un control TListView a un control TMemo
Para copiar varias líneas desde un control TListView y pegarlas en un control TMemo, cada elemento de la lista en una línea separada, puede utilizar el siguiente código:
“`c++
TStringList *selectedItems = new TStringList();
for (int i = 0; i < ListView1->Items->Count; i++) {
if (ListView1->Items->Item[i]->Selected)
selectedItems->Add(ListView1->Items->Item[i]->Caption);
}
if (selectedItems->Count > 0) {
Clipboard()->AsText = selectedItems->Text;
Memo1->Text = Clipboard()->AsText;
}
“`
Este código itera a través de los elementos del control TListView y añade los elementos seleccionados a un TStringList. Luego, establece el contenido del TStringList como texto en el portapapeles usando la propiedad
Clipboard()->AsText
. Finalmente, pega el contenido del portapapeles en el control TMemo usando la propiedadMemo1->Text
.Esto debería funcionar correctamente, con cada elemento del control TListView en una línea separada del control TMemo.