¿Cómo puedo hacer un CListCtrl
para redimensionar el ancho de sus columnas automáticamente? Por lo general, cuando un elemento en la lista es demasiado largo, el fondo desaparece de la vista y el usuario tiene que cambiar manualmente el ancho de la columna correspondiente. ¿Hay alguna forma de hacer esto por código?Anchos de columna de cambio de tamaño automático en un CListCtrl
Respuesta
Cambiar el tamaño de las columnas de forma automática es fácil:
for(int i = 0;i < pListCtrl->GetHeaderCtrl()->GetItemCount();++i)
pListCtrl->SetColumnWidth(i,LVSCW_AUTOSIZE_USEHEADER);
Esto optimizará las columnas.
¿Tiene la opción "Sin desplazamiento"? De forma predeterminada (opción "Sin desplazamiento" desactivada), si un elemento es demasiado largo, aparecerá una barra de desplazamiento.
Supongo que se refiere a un control de lista en el modo de informe? Lamentablemente, no hay forma de cambiar automáticamente el tamaño de las columnas. Lo que puede hacer (lo que hago en algunos lugares) es calcular el ancho de las columnas a medida que ingresa los elementos, luego manejar WM_SIZE y cambiar el tamaño de las columnas. Sin embargo, esto provoca cambios que el usuario ha perdido, por lo que es posible que necesite un algoritmo mejor, como el seguimiento si el usuario realizó algún cambio, si es que no lo hizo. No es muy agradable desde una perspectiva de UX, solo lo uso en una cantidad selecta de circunstancias donde el comportamiento tiene sentido en el contexto del resto de la UI.
Sí, eso es exactamente lo que quise decir. Gracias por la respuesta, si no puedo obtener un algoritmo adecuado, manejaré OnSize() para cambiar el tamaño manualmente y le pediré al lector que cambie el tamaño de la ventana. – Isuru
- 1. jQuery tablesorter + anchos de columna de cambio de tamaño
- 2. ListView columna de tamaño automático
- 3. Columna de tamaño automático en TVirtualStringTree
- 4. ¿Cómo detectar un cambio en la selección de CListCtrl?
- 5. Cambio automático de tamaño de los controles de Windows Forms
- 6. Icono de JButton de cambio de tamaño automático
- 7. QT/QT-Designer Pregunta: widget de cambio de tamaño automático
- 8. anchos de automóviles en ListView
- 9. C# iTextSharp Anchos de columna AutoAjustar
- 10. Etiqueta HTML5 frente a Div para cambio de tamaño automático
- 11. Gridpanel cambio de tamaño automático en el tamaño de la ventana
- 12. Cambio de tamaño automático en una barra de navegación de un control segmentado construido dinámicamente
- 13. jqGrid - deshabilitar el cambio de tamaño de columna de usuario
- 14. JQGrid Columna Ancho automático
- 15. extjs gridpanel dentro de un panel no desplazamiento automático o cambio de tamaño
- 16. ¿Cómo vincular el cambio de tamaño de escenario con el cambio de tamaño de los componentes?
- 17. Cambio automático de tamaño de imagen en un diseño de flujo CSS para simular un diseño de tabla html
- 18. cómo hacer cambio automático de tamaño de imagen en Python3 con PyGI?
- 19. jQuery - Diálogo de cambio de tamaño automático en contenido dinámico y mantener la posición central
- 20. Cambio de tamaño de un GLKView
- 21. Tamaño automático de los controles en winform
- 22. ¿Qué controla el cambio automático de tamaño de ventana en Tkinter?
- 23. table-layout: problema resuelto con anchos de columna
- 24. Cambio de tamaño de imagen de IFrame
- 25. Disposición de Android y cambio automático de tamaño de la imagen
- 26. Cambio de tamaño dinámico de una ventana en Xaml
- 27. ¿Cómo establecer un elemento en CListCtrl como seleccionado?
- 28. ¿Cómo puedo mantener los anchos de columna especificados por el usuario en una tabla JTable?
- 29. Cambio automático del tamaño del texto de la etiqueta en Qt: comportamiento extraño
- 30. iPhone - El contenido de UIWebView con cambio de tamaño automático no se ajusta al marco
Oye, lo probé y parece funcionar bien :) :) Muchas gracias por la respuesta dwo: D – Isuru
Una pequeña pregunta dwo, nunca escuché sobre HeaderControl. ¿Qué es exactamente? Muchas gracias! – Isuru
El control de encabezado es la parte superior del control de lista con los títulos de columna en él. – dwo