[C con Clase] MySQL y WinAPI

Salvador Pozo salvador en conclase.net
Mar Nov 17 14:26:47 CET 2009


El pasado 2009-11-16 23:48:30, Juan Pedro Mermoz escribió:

Hola:
 
JPM> Ahora, mi problema es que el listbox, en vez de mostrarme los 3 campos en una misma fila, me los muestra en 3 filas separadas.
JPM> De qué manera podria hacer para que me muestre en una misma fila los 3 campos?

Ten en cuenta que los "list-box" no son multicolumna. Hay una opción para que los elementos de la lista se muestren en varias columnas, pero cada elemento es único, independientemente de en qué columna esté.

A ver si me explico mejor:

Los list-box sólo pueden mostrar cadenas, y cada elemento de la lista es siempre una única cadena, independientemente de que esas cadenas se muestren en una columna o en varias. Los list-box multicolumna sencillamente aprovechan toda la anchura del control añadiendo más columnas.

Probablemente, lo que tu quieres es un List-view, como el que usa el explorador de archivos de Windows, donde en cada columna se muestran distintos valores de un fichero: nombre, tamaño, fecha, etc. Pero en los que cada línea es un ítem.

Puedes usar un list-box siempre que pongas los tres campos en una cadena:

while((row=mysql_fetch_row(res)) != NULL)
{
    sprintf(cad, "%s, %s, %s", row[0], row[1], row[2]) 
    SendDlgItemMessage(hDlg, ID_LISTA, LB_ADDSTRING, 0, (LPARAM)cad);
}

Hasta pronto.

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net


Más información sobre la lista de distribución Cconclase