Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-10-2004
Igna Igna is offline
Miembro
 
Registrado: jun 2003
Posts: 27
Poder: 0
Igna Va por buen camino
Posición Columna en ListView

Hola.

¿Alguien sabe como leer la posición de una columna en un ListView?.

En teoría con la propiedad index del TListColumn me valdría, pero si yo cambio la posición de la columna "clave" (aquella que contiene los items, no los subitems), cuando accedo a su propiedad index me sigue saliendo =0, y, obviamente, las posición de las demás columnas ya no se corresponden con su propiedad index.

Lo que quiero saber es si hay algún medio de conocer la posición de la columna en el ListView con visualización vsReport aunque cambie la columna de posición.

Espero haberme explicado más o menos bien.

Un saludo, y gracias.
Responder Con Cita
  #2  
Antiguo 31-10-2004
Ricardosml Ricardosml is offline
Miembro
 
Registrado: oct 2004
Ubicación: Salta
Posts: 13
Poder: 0
Ricardosml Va por buen camino
Cool Posible solución

Hola
Yo no usé en mucho este control, por lo que no conozco todas sus propiedades y métodos, pero lo que se me ocurre que puedes hacer un ciclo sumando en ancho de las columnas anteriores:

function TForm1.DarPosicion(n:integer):integer;
var
sum,i:integer;
begin
sum:=0;
i:=1;
while (i<=n) and (i<ListView1.Columns.Count) do
begin
sum:=sum+ListView1.Column[i-1].Width;
i:=i+1;
end;
result:=sum;
end;

Donde n es la posicion que quieres averiguar;
Espero que esta solución se sirva.
Responder Con Cita
  #3  
Antiguo 02-11-2004
Igna Igna is offline
Miembro
 
Registrado: jun 2003
Posts: 27
Poder: 0
Igna Va por buen camino
Gracias por responder Ricardosml, pero no es eso lo que necesito.

Yo no quiero saber la posición en la pantalla, lo que quiero saber es el número de columna que es. Es decir, si al principio tengo tres columnas más o menos así:

columna1 | columna2 | columna3

e intercambio la posición de columna1 y columna2 tal que así:

columna2 | columna1 | columna2

quiero que al seleccionar la columna1 (en el evento OnColumnClick), pueda leer el caption de esa columna. El problema es que para el ListView, el index de la columna1 sigue siendo el 0, por lo que si utilizo Column.Caption o Columns[column.index], me aparece el caption de la columna que en ese momento está en la primera posición (en este caso columna2). Utilizo el caption para ordenar el ListView dependiendo del campo seleccionado, por eso necesito leerlo.

De todas formas, gracias por responder.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 18:24:43.


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
Copyright 1996-2007 Club Delphi