CComboBox::InitStorage
Aloca memória para armazenar itens da lista na parte da caixa de lista da caixa combo.
int InitStorage(
int nItems,
UINT nBytes
);
Parâmetros
nItems
Especifica o número de itens para adicionar.nBytes
Especifica a quantidade de memória, em bytes, para atribuir para cadeias de caracteres de item.
Valor de retorno
Se bem sucedida, o número máximo de itens que parte da caixa de lista da caixa combo pode armazenar antes que uma realocação de memória seja necessária, se não CB_ERRSPACE, significando memória suficiente não estão disponíveis.
Comentários
Chamar essa função antes de adicionar um grande número de itens à parte da caixa de listagem de CComboBox.
Windows 95 somente: /98 o parâmetro de wParam é limitado aos valores de 16 bits. Isso significa que as caixas de listagem não podem conter mais de 32.767 itens. Embora o número de itens serão restritas, o tamanho total dos itens em uma caixa de listagem é delimitado somente pela memória disponível.
Essa função ajuda a acelerar a inicialização das caixas de listagem que têm um grande número de itens (mais de 100). Preallocates a quantidade de memória especificada de modo que as funções subseqüentes de AddString, de InsertString, e de Dir tenham o tempo possíveis os menores. Você pode usar avaliações para os parâmetros. Se você superestima, qualquer memória adicional é atribuída; se você underestimate, a alocação normal é usado para itens que excedem a quantidade preallocated.
Exemplo
// Initialize the storage of the combo box to be 256 strings with
// about 10 characters per string, performance improvement.
int nAlloc = pmyComboBox->InitStorage(256, 10);
ASSERT(nAlloc != CB_ERRSPACE);
// Add 256 items to the combo box.
CString strAdd;
for (int i = 0; i < 256; i++)
{
strAdd.Format(_T("item string %d"), i);
m_pComboBox->AddString(strAdd);
}
Requisitos
Cabeçalho: afxwin.h