![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
|
Busquedad en un listview
Hola lo que quiero es cargar un txt en un listview. Y luego de que se carguen todos los datos, buscar uno en particular por su numero de documento.
Con este codigo logro listar el primer registro de un txt. Y no todos. Código:
void __fastcall TForm1::ShowRegister(const int pp)
{
TListItem *lItem = ListView1->Items->Add();
lItem->Caption = TS->Strings[pp];
lItem->SubItems->Add(TS->Strings[pp+1]+" "+TS->Strings[pp+2]);
}
|
|
#2
|
||||
|
||||
|
Hola eennzzoo.
Te hice un ejemplo donde si se encuentra el documento buscado, pone los datos del ListView en color rojo y negrita. Código:
...
// Configuración echa en el evento OnCreate para clarificar,
// podes realizala desde el Object Inspector en tiempo de diseño.
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ListView1->Align = alTop;
ListView1->Columns->Add();
ListView1->Columns->Add();
ListView1->Column[0]->Caption = "DOCUMENTO";
ListView1->Column[0]->Width = 100;
ListView1->Column[1]->Caption = "NOMBRE Y APELLIDO";
ListView1->Column[1]->Width = 350;
ListView1->ViewStyle = vsReport;
}
void __fastcall TForm1::btnFileOpenClick(TObject *Sender)
{
if (OpenDialog1->Execute()) {
TListItem *it;
TStrings *TS = new TStringList;
ListView1->Items->Clear();
TS->LoadFromFile(OpenDialog1->FileName);
for(int i= 0; i< TS->Count-1; i+= 3) {
it = ListView1->Items->Add();
it->Caption = TS->Strings[i];
it->SubItems->Add(TS->Strings[i+1]+" "+TS->Strings[i+2]);
}
delete TS;
}
}
void __fastcall TForm1::btnBuscarClick(TObject *Sender)
{
TListItem *it = ListView1->FindCaption(0,
Trim(EditDoc->Text), true, true, true);
if (it) ListView1->ItemIndex = it->Index;
}
void __fastcall TForm1::ListView1AdvancedCustomDrawItem(
TCustomListView *Sender, TListItem *Item, TCustomDrawState State,
TCustomDrawStage Stage, bool &DefaultDraw)
{
TCanvas *CV = Sender->Canvas;
CV->Font->Style = CV->Font->Style >> fsBold;
CV->Font->Color = clBlack;
if (Item->Index == Sender->ItemIndex) {
CV->Font->Style = CV->Font->Style << fsBold;
CV->Font->Color = clRed;
}
}
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#3
|
||||
|
||||
|
Cita:
[C++ Error] buscar.cpp(77): E2316 'ItemIndex' is not a member of 'TListView' [C++ Error] buscar.cpp(131): E2316 'ItemIndex' is not a member of 'TCustomListView' |
|
#4
|
||||
|
||||
|
Hola.
Probe el código antes de publicarlo y funciona correctamente, tal vez se deba a versiones distinas de C++ Builder. Reemplaza el anterior código del evento OnAdvancedCustomDrawItem por este: Código:
void __fastcall TForm1::ListView1AdvancedCustomDrawItem(
TCustomListView *Sender, TListItem *Item, TCustomDrawState State,
TCustomDrawStage Stage, bool &DefaultDraw)
{
TCanvas *CV = ListView1->Canvas;
CV->Font->Style = CV->Font->Style >> fsBold;
CV->Font->Color = clBlack;
if (Item->Index == ListView1->ItemIndex) {
CV->Font->Style = CV->Font->Style << fsBold;
CV->Font->Color = clRed;
}
}
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#5
|
||||
|
||||
|
Cita:
|
|
#6
|
||||
|
||||
|
Hola.
El archivo .zip incluye el codigo fuente y el ejecutable (para probarlo renombralo de .ex_ a .exe). Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#7
|
||||
|
||||
|
Que raro me tira los mismos errores.
|
|
#8
|
||||
|
||||
|
Hola.
He probado el código en tres equipos con diferentes S.O. y funciona correctamente. Esto hace que los errores que mencionas, me resulten subjetivos e imposibles de reproducir; al menos sin saber mas datos del entorno y herramientas que estas usando. Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#9
|
||||
|
||||
|
Que raro tengo builder 5. Igual gracias.
|
|
#10
|
||||
|
||||
|
Hola eennzzoo.
Encontré un artículo sobre del uso del control TListView que seguramente te será útil: Windows Controls: The List View. Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Busquedad en un txt | eennzzoo | C++ Builder | 7 | 14-03-2014 17:06:15 |
| listview | chuli17 | Lazarus, FreePascal, Kylix, etc. | 1 | 21-02-2011 12:20:37 |
| ListView y sus campos !!! | Ledian_Fdez | OOP | 7 | 13-01-2010 07:23:35 |
| Listview... con ADO | Victor Vega | SQL | 10 | 08-09-2007 05:43:35 |
| Uso de ListView | lucero_chivas | C++ Builder | 3 | 27-09-2006 17:38:00 |
|