IACList 인터페이스(shlobj_core.h)
후보 문자열이 계층 구조로 구성될 때 자동 완성 의 효율성을 향상시키는 메서드를 노출합니다.
상속
IACList 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IACList 에는 다음과 같은 유형의 멤버도 있습니다.
메서드
IACList 인터페이스에는 이러한 메서드가 있습니다.
IACList::Expand 자동 완성 클라이언트가 네임스페이스의 지정된 항목과 연결된 후보 문자열을 생성할 것을 요청합니다. |
설명
자동 완성에는 일반적으로 다음 세 가지 구성 요소가 필요합니다.
- 자동 완성 클라이언트입니다. 이 클라이언트는 편집 컨트롤을 호스트하는 대화 상자와 같은 창입니다.
- 자동 완성 개체(CLSID_AutoComplete)입니다. 이 개체는 시스템에서 제공되며 사용자 인터페이스, 구문 분석 및 백그라운드 스레드 관리를 처리합니다.
- 자동 완성 목록 개체입니다. 이 개체는 자동 완성 개체에 후보 문자열 목록을 제공합니다.
목록 개체가 수행하는 가장 간단한 방법은 자동 완성 개체가 요청을 할 때마다 네임스페이스의 모든 문자열을 반환하는 것입니다. 이러한 유형의 목록 개체를 구현하는 방법에 대한 자세한 내용은 IAutoComplete를 참조하세요. 그러나 이 방법은 네임스페이스가 상대적으로 작은 경우에만 실용적입니다. 많은 수의 문자열이 관련된 경우 목록 개체는 네임스페이스의 작은 하위 집합으로 제한해야 합니다.
IACList 인터페이스는 계층적으로 구성된 네임스페이스에서 문자열의 합리적인 하위 집합을 선택하는 데 도움이 되도록 자동 완성 목록 개체에 의해 내보내집니다. 큰 네임스페이스를 사용하면 자동 완성의 효율성이 크게 향상됩니다. 기본 절차는 다음과 같습니다.
- 자동 완성 개체는 목록 개체의 IEnumString 인터페이스를 호출합니다 . list 개체는 계층의 최상위 항목 이름을 반환합니다. 예를 들어 네임스페이스가 C: 드라이브의 모든 파일 및 폴더로 구성된 경우 목록 개체는 C:\ 디렉터리에 포함된 폴더 및 파일의 정규화된 경로를 반환합니다.
- 사용자가 구분 기호를 입력할 때까지 계속 입력합니다. '\' 및 '/' 문자는 자동 완성 개체에 의해 구분 기호로 인식됩니다.
- 자동 완성 개체는 목록 개체의 IACList::Expand 메서드를 호출하고 현재 부분 문자열을 전달합니다.
- 자동 완성 개체는 목록 개체의 IEnumString 인터페이스를 다시 호출하여 새 문자열 목록을 요청합니다. 부분 문자열이 네임스페이스의 최상위 항목 중 하나와 일치하는 경우 목록 개체는 선택한 항목 바로 아래에 있는 항목의 이름을 반환합니다. instance 경우 사용자가 "C:\Program Files\"를 입력한 경우 목록 개체는 해당 디렉터리에 포함된 파일 및 폴더의 이름을 반환합니다. IACList::Expand에 전달된 이름이 최상위 항목과 일치하지 않는 경우 자동 완성 개체가 목록 개체의 네임스페이스에 있는 문자열로 IACList::Expand을 호출할 때까지 목록 개체가 문자열 반환을 중지할 수 있습니다.
- 일반적으로 Enter 키를 눌러 사용자가 문자열을 선택할 때까지 프로세스가 계속됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional, Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shlobj_core.h |