Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


Alinear texto en la primera columna de un CListCtrl

Aqui programadores en la plataforma Win32 con Visual C++ de Microsoft...

Moderador: latindeveloper

Alinear texto en la primera columna de un CListCtrl

Notapor johnny el Sab Jun 04, 2005 2:37 pm

Saludos a los amigos de Latindevelopers.

Tengo un control tipo CListCtrl, dicho control esta en modo Report

El problema es que el texto de la primera columna no se puede alinear a la derecha ni al centro. Para insertar la columna uso el siguiente código:

Código: Seleccionar todo
m_ListProductos.InsertColumn( 0, "Id_Prod", LVCFMT_RIGHT, 55);


Pero el texto que debería aparecer alineado a la derecha se visualiza alineado a la izquierda.

La pregunta es si en un control CListCtrl en modo Report, se puede cambiar la alineación del texto.

Desde ya muchas gracias por sus respuestas.

Atentamente Johnny.
johnny
Usuario Activo
Usuario Activo
 
Mensajes: 47
Registrado: Lun Jun 21, 2004 4:02 pm
Ubicación: Arequipa-Perú

Notapor metx el Lun Ago 29, 2005 2:36 pm

Me pasa exactamente lo mismo he intente varias veces de arreglarlo pero no hubo caso...

lo que hago creo una columna vacia... de ancho 0 o 1 para no calentarme la cabeza...

y ahora me puedes ayudar tu... en el mismo tipo de control quiero 2 cosas....

1) que cuando haga click en el solo se selecciona la primera columna... y para peor... la q esta vacia.... sabes como hacer que se selecciones toda la fila... completita....

2)y cuando hay pocos elementos en el control.... y hago click... me deja marcado el que esta anteriormente



nos belmont
metx
Novato
Novato
 
Mensajes: 17
Registrado: Mié Jun 01, 2005 7:53 pm

Re: Alinear texto en al primera columna de un CListCtrl

Notapor johnny el Dom Sep 04, 2005 4:43 pm

Hola

Primero no debes dejar vacia la primera columna ya que esta es la principal.
En cuanto a la alineación del texto en la primera columna yo lo he solucionado dando formato a la cadena de texto asi por ejemplo:

Código: Seleccionar todo
CString sCadAux;
long lCodigo = 1256;
sCadAux.Format("%10d", lCodigo);  // Alinear el codigo a la derecha
m_Lista.SetItemText(iFila, 0, sCadAux);


Ahora para que se seleccione toda la fila del Control Lista, tienes que asignarle la propiedad LVS_EX_FULLROWSELECT asi por ejemplo:

Código: Seleccionar todo
m_Lista.SetExtendedStyle( LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES );


Cuando hagas Click en una fila que tiene datos se debe marcar dicha fila, ahora cuando hagas click en una fila que no tiene datos se debe marcar la ultima fila marcada.

Espero que esto te sirva.

Atentamente Johnny
johnny
Usuario Activo
Usuario Activo
 
Mensajes: 47
Registrado: Lun Jun 21, 2004 4:02 pm
Ubicación: Arequipa-Perú


Volver a Visual C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados