La Web del Programador: Comunidad de Programadores
 
    Pregunta:  5375 - CSCROLLVIEW
Autor:  Miguel Ángel Álvarez
Tengo una aplicación en la que la vista está derivada de CScrollView. Utilizo la vista par ir sacando mensajes a medida que se realizan las operaciones del programa, pero el problema está en que aunque la barra de desplazamiento sí tiene el tamaño adecuado, por defecto siempre visualizo los primeros mensajes, cuando sería más interesante ver los últimos.

Es decir, lo que me interesaría, es que sin necesidad de pulsar en la barra de desplazamiento, se viesen los últimos mensajes, y para ver los primeros el usuario debería pulsar en la barra de desplazamiento (y no al revés como pasa ahora).

Agradecería mucha la ayuda.

Miguel Ángel

  Respuesta:  Jaime Olivares
Me parece que CScrollView no es tu mejor opción para presentar mensajes. Si utilizas CEdit o CListCtrl puedes agregar los textos con facilidad y aprovechar las funciones de visualizacion de lineas especificas, como EnsureVisible(), que deberas llamar cada vez que aumentas una linea para asegurar la visibilidad de la recientemente agregada.
No te preocupes de la barra de scroll, que ambos controles las manejan automáticamente.
Particularmente te recomiendo el CListCtrl (o CListView), ya que en su modalidad Report te permite presentar cada linea con varias columnas para formatear, por ejemplo, fecha/hora del suceso, tipo de suceso, descripcion del suceso, etc.