Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   sacar sólo un subitem de un listview (https://www.clubdelphi.com/foros/showthread.php?t=22955)

unreal4u 01-07-2005 21:36:58

sacar sólo un subitem de un listview
 
wolas !! El otro día los molesté sobre cómo meter elementos a un listview. Ahora los molesto con otra: sacar esos mismos elementos, PERO sólo de a uno; hasta el momento lo único que he logrado construir es la siguiente sentencia:

Código Delphi [-]
for nI := 0 to ListView1.Items.Count do
  for nJ := 0 to ListView1.Columns.Count - 1 do       
   aArregloStrings[nJ] := ListView1.Items[nI-1].SubItems.Text;

que me saca todos los elementos, no de a uno. Lo que pasa es que necesito comprobar si son numéricos o stringes los datos que hay dentro del listview; pero ANTES (obviamente) de meterlo a la base de datos, para construir la sentencia SQL apropiada.

Había pensado en lo siguiente, pero lamentablemente, no funciona (Es la idea de lo que quiero hacer):

Código Delphi [-]
 ...
 for nJ := 0 to ListView1.Columns.Count -1 do       
   aArregloStrings[nJ] := ListView1.Items[nI-1].SubItems[nJ].Text;

Esperando su siempre muy oportuna respuesta, se despide: Camilo...

delphi.com.ar 01-07-2005 21:42:04

No entiendo si quieres quitar Items o SubItems....
Código Delphi [-]
var
 i: Integer;
begin
  ListView1.Items.BeginUpdate;
  try
    for i := ListView1.Items.Count-1 downto 0 do
      if NoMeGusta(ListView1.Items[i]) then
        ListView1.Items.Delete(i);
  finally
    ListView1.Items.EndUpdate;
  end;

Saludos!

unreal4u 01-07-2005 21:55:37

nop, lo que quiero hacer es simplemente sacar subitems, no borrarlos. O sea, poder llevarlos a algún string (mi array de arriba es un array de strings) para ver si es numérico o no, para luego poder construir una sentencia SQL acorde con los datos que tengo. Por ejemplo, tengo la siguiente tabla:

Código Delphi [-]
  campo #1     campo #2       campo #3
  bla bla     23423423      bla bla 55
            555555     chaolin
 ble ble   11111        otro chao


La tabla no me qdó muy bonita jejeje, pero la idea es q puede haber un campo nulo, o alguno numérico, o algún string, etc. No se sabe cómo es el campo con e que estamos tratando. No sé si se entiende un poco más la idea ...

delphi.com.ar 01-07-2005 22:03:48

Código Delphi [-]
ListView_DeleteColumn(ListView1.Handle, 1);
Si quieres mantener los datos, una opción puede ser olcultarla!

roman 01-07-2005 22:05:29

Cita:

Empezado por unreal4u
La tabla no me qdó muy bonita jejeje

¿Qué tal así?


Código:

+-----------+------------+-------------+
| campo #1  |  campo #2  |    campo #3 |
+-----------+------------+-------------+
| bla bla  | 23423423  |  bla bla 55 |
+-----------+------------+-------------+
|          | 555555    |  chaolin    |
+-----------+------------+-------------+
| ble ble  | 11111      |  otro chao  |
+-----------+------------+-------------+

;)

// Saludos

unreal4u 01-07-2005 22:21:43

jajjja .. en cuanto a la tabla .. voi a revisar de nuevo la guía de estilo, que no me acuerdo de todas las etiquetas jajajja .. estuve a punto de hacerla en html, pero la verdad es que me pareció un poco "atadoso" jkajajaja ...

En cuanto a lo otro, estuve pensando que en realidad no importa si los datos se borran o no, así que voi a probar ese otro método ... Gracias !!

delphi.com.ar 01-07-2005 22:39:42

Corrijo mi respuesta, mejor te recomiendo:
Código Delphi [-]
ListView1.Columns.Delete(Index);

unreal4u 02-07-2005 09:34:28

lo que en un principio me resultó bastante complicado, después de ir a comprar el pan y despegar los ojos de la pantalla durante un rato resultó ser bastante más fácil de lo que había creído. Es increible como uno se "topa" o "ennublece" cuando se está horas al frente del computador tratando de resolver un mismo problema.


En fin, grax por las respuestas... vaya que me sirvieron de orientación :-)


La franja horaria es GMT +2. Ahora son las 23:17:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi