Compartir a través de


CListBox::InitStorage

Asigna memoria para almacenar elementos de cuadro de lista.

int InitStorage( 
   int nItems, 
   UINT nBytes  
);

Parámetros

  • nItems
    especifica el número de elementos para agregar.

  • nBytes
    Especifica la cantidad de memoria, en bytes, para asignar para las cadenas del elemento.

Valor devuelto

Si es correcto, el número máximo de elementos que el cuadro de lista puede almacenar antes de que una reasignación de memoria es necesaria, si no LB_ERRSPACE, que no suficiente memoria disponible.

Comentarios

Llame a esta función antes de agregar un gran número de elementos a CListBox.

Esta función ayuda a acelerar la inicialización de los cuadros de lista con un gran número de elementos (más de 100). Reserva la cantidad de memoria especificada de modo que las funciones subsiguientes de AddString, de InsertString, y de Dir tarden tiempo posible más corto. Puede utilizar las estimaciones de los parámetros. Si le sobrestimación, alguna memoria adicional asignan; si le underestimate, la asignación normal utilizan para los elementos que superan la cantidad reservado.

Windows 95 /98 sólo: el parámetro de nItems se limita a los valores de 16 bits. esto significa que los cuadros de lista no pueden contener más de 32.767 elementos. Aunque el número de elementos se limita, el tamaño total de los elementos en un cuadro de lista está limitado por la memoria disponible.

Ejemplo

// Initialize the storage of the list box to be 256 strings with 
// about 10 characters per string, performance improvement. 
int n = m_myListBox.InitStorage(256, 10);
ASSERT(n != LB_ERRSPACE);

// Add 256 items to the list box.
CString str;
for (int i = 0; i < 256; i++)
{
   str.Format(_T("item string %d"), i);
   m_myListBox.AddString( str );
}

Requisitos

encabezado: afxwin.h

Vea también

Referencia

CListBox Class

Gráfico de jerarquías

CListBox::CListBox

CListBox::Create

CListBox::ResetContent

LB_INITSTORAGE