다음을 통해 공유


CComboBox::InitStorage

목록 상자 항목을 콤보 상자의 목록 상자 부분에 저장 하는 메모리를 할당 합니다.

int InitStorage(
   int nItems,
   UINT nBytes 
);

매개 변수

  • nItems
    추가할 항목의 수를 지정 합니다.

  • nBytes
    항목에 문자열을 할당할 바이트 메모리 양을 지정 합니다.

반환 값

실패 한 최대 항목 경우 메모리 재할당을 필요 하기 전에 콤보 상자의 목록 상자 부분을 저장할 수 있습니다 CB_ERRSPACE, 메모리가 부족 하 여 의미 사용할 수 있습니다.

설명

목록 상자 부분에 많은 수의 항목을 추가 하기 전에이 함수를 호출 하 여 CComboBox.

Windows 95/98만:에 wParam 매개 변수는 16 비트 값으로 제한 합니다.따라서 두 개 이상의 32767 항목 목록 상자를 사용할 수 없습니다.항목 수가 제한 되어 있지만 목록 상자에 있는 항목의 총 크기는 사용 가능한 메모리에 의해서만 제한 됩니다.

이 함수 속도 항목 (100 개 이상의) 많은 목록 상자를 초기화 하는 데 도움이 됩니다.지금 그 후속 메모리 양을 지정한를 preallocates AddString, InsertString, 및 Dir 최단 시간 함수를 사용 합니다.예상 매개 변수를 사용할 수 있습니다.과 대 평가 하는 경우 일부 추가 메모리가 할당 됩니다. 과소 평가 하는 경우 기본 할당 미리 할당 된 크기를 초과 하는 항목에 대해 사용 됩니다.

예제

// 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);
}

요구 사항

헤더: afxwin.h

참고 항목

참조

CComboBox 클래스

계층 구조 차트

CComboBox::CComboBox

CComboBox::Create

CComboBox::ResetContent

CB_INITSTORAGE