다음을 통해 공유


CMFCShellListCtrl 클래스

이 클래스는 CMFCShellListCtrl Windows 목록 컨트롤 기능을 제공하고 셸 항목 목록을 표시하는 기능을 포함하여 확장합니다.

구문

class CMFCShellListCtrl : public CMFCListCtrl

멤버

공용 메서드

이름 설명
CMFCShellListCtrl::D isplayFolder 제공된 폴더에 포함된 항목 목록을 표시합니다.
CMFCShellListCtrl::D isplayParentFolder 현재 표시된 폴더의 부모인 폴더에 포함된 항목 목록을 표시합니다.
CMFCShellListCtrl::EnableShellContextMenu 바로 가기 메뉴를 사용하거나 사용하지 않도록 설정합니다.
CMFCShellListCtrl::GetCurrentFolder 현재 폴더의 경로를 검색합니다.
CMFCShellListCtrl::GetCurrentFolderName 현재 폴더의 이름을 검색합니다.
CMFCShellListCtrl::GetCurrentItemIdList 현재 목록 컨트롤 항목의 PIDL을 반환합니다.
CMFCShellListCtrl::GetCurrentShellFolder 현재 셸 폴더에 대한 포인터를 반환합니다.
CMFCShellListCtrl::GetItemPath 항목의 텍스트 경로를 반환합니다.
CMFCShellListCtrl::GetItemTypes 목록 컨트롤에 표시되는 셸 항목 형식을 반환합니다.
CMFCShellListCtrl::IsDesktop 현재 선택한 폴더가 데스크톱 폴더인지 확인합니다.
CMFCShellListCtrl::OnCompareItems 프레임워크는 두 항목을 비교할 때 이 메서드를 호출합니다. (재정의 CMFCListCtrl::OnCompareItems.)
CMFCShellListCtrl::OnFormatFileDate 프레임워크가 목록 컨트롤에 표시되는 파일 날짜를 검색할 때 호출됩니다.
CMFCShellListCtrl::OnFormatFileSize 프레임워크가 목록 컨트롤의 파일 크기를 변환할 때 호출됩니다.
CMFCShellListCtrl::OnGetItemIcon 프레임워크가 목록 컨트롤 항목의 아이콘을 검색할 때 호출됩니다.
CMFCShellListCtrl::OnGetItemText 프레임워크가 목록 컨트롤 항목의 텍스트를 변환할 때 호출됩니다.
CMFCShellListCtrl::OnSetColumns 열 이름을 설정하는 경우 프레임워크에서 호출됩니다.
CMFCShellListCtrl::Refresh 목록 컨트롤을 새로 고치고 다시 칠합니다.
CMFCShellListCtrl::SetItemTypes 목록 컨트롤에 표시되는 항목의 유형을 설정합니다.

설명

이 클래스는 CMFCShellListCtrl 프로그램에서 Windows 셸 항목을 나열할 수 있도록 하여 CMFCListCtrl 클래스기능을 확장합니다. 사용되는 표시 형식은 탐색기 창의 목록 보기와 같습니다.

CMFCShellTreeCtrl 개체를 개체와 CMFCShellListCtrl 연결하여 전체 탐색기 창을 만들 수 있습니다. 그런 다음, 해당 항목에서 CMFCShellTreeCtrl 항목을 선택하면 개체가 CMFCShellListCtrl 선택한 항목의 내용을 나열하게 됩니다.

예시

다음 예제에서는 클래스의 CMFCShellListCtrl 개체를 만드는 방법과 현재 표시된 폴더의 부모 폴더를 표시하는 방법을 보여 줍니다. 이 코드 조각은 탐색기 샘플일부입니다.

CMFCShellListCtrl m_wndList;
CRect rectDummy(0, 0, 0, 0);
// The this pointer points to CExplorerView class which extends the CView class.
m_wndList.Create(WS_CHILD | WS_VISIBLE | LVS_REPORT, rectDummy, this, 1);
m_wndList.DisplayParentFolder();

상속 계층 구조

CObject

CCmdTarget

CWnd

CListCtrl

CMFCListCtrl

CMFCShellListCtrl

요구 사항

헤더: afxshelllistCtrl.h

CMFCShellListCtrl::D isplayFolder

제공된 폴더에 포함된 항목 목록을 표시합니다.

virtual HRESULT DisplayFolder(LPCTSTR lpszPath);
virtual HRESULT DisplayFolder(LPAFX_SHELLITEMINFO lpItemInfo);

매개 변수

lpszPath
[in] 폴더의 경로를 포함하는 문자열입니다.

lpItemInfo
[in] 표시할 폴더를 LPAFX_SHELLITEMINFO 설명하는 구조체에 대한 포인터입니다.

Return Value

S_OK 성공하면

CMFCShellListCtrl::D isplayParentFolder

업데이트CMFCShellListCtrl 개체는 현재 표시된 폴더의 부모 폴더를 표시합니다.

virtual HRESULT DisplayParentFolder();

Return Value

S_OK 성공하면

CMFCShellListCtrl::EnableShellContextMenu

바로 가기 메뉴를 사용하도록 설정합니다.

void EnableShellContextMenu(BOOL bEnable = TRUE);

매개 변수

bEnable
[in] 프레임워크에서 바로 가기 메뉴를 사용할 수 있는지 여부를 지정하는 부울입니다.

CMFCShellListCtrl::GetCurrentFolder

CMFCShellListCtrl 개체에서 현재 선택한 폴더의 경로를 검색합니다.

BOOL GetCurrentFolder(CString& strPath) const;

매개 변수

strPath
[out] 메서드가 경로를 작성하는 문자열 매개 변수에 대한 참조입니다.

Return Value

성공하는 경우 0이 아닌 값입니다. 그렇지 않은 경우 0입니다.

설명

에 선택된 폴더가 없으면 이 메서드가 CMFCShellListCtrl실패합니다.

CMFCShellListCtrl::GetCurrentFolderName

CMFCShellListCtrl 개체에서 현재 선택한 폴더의 이름을 검색합니다.

BOOL GetCurrentFolderName(CString& strName) const;

매개 변수

strName
[out] 메서드가 이름을 쓰는 문자열 매개 변수에 대한 참조입니다.

Return Value

성공하는 경우 0이 아닌 값입니다. 그렇지 않은 경우 0입니다.

설명

에 선택된 폴더가 없으면 이 메서드가 CMFCShellListCtrl실패합니다.

CMFCShellListCtrl::GetCurrentItemIdList

현재 선택한 항목의 PIDL을 반환합니다.

LPITEMIDLIST GetCurrentItemIdList() const;

Return Value

현재 항목의 PIDL입니다.

CMFCShellListCtrl::GetCurrentShellFolder

CMFCShellListCtrl 개체에서 현재 선택한 항목에 대한 포인터를 가져옵니다.

const IShellFolder* GetCurrentShellFolder() const;

Return Value

선택한 개체의 IShellFolder 인터페이스 에 대한 포인터입니다.

설명

현재 선택된 개체가 없는 경우 이 메서드는 NULL을 반환합니다.

CMFCShellListCtrl::GetItemPath

항목의 경로를 검색합니다.

BOOL GetItemPath(
    CString& strPath,
    int iItem) const;

매개 변수

strPath
[out] 경로를 수신하는 문자열에 대한 참조입니다.

iItem
[in] 목록 항목의 인덱스입니다.

Return Value

성공하면 TRUE이고, 그렇지 않으면 FALSE입니다.

설명

iItem에서 제공하는 인덱스는 CMFCShellListCtrl 클래스 개체에 의해 현재 표시되는 항목을 기반으로 합니다.

CMFCShellListCtrl::GetItemTypes

CMFCShellListCtrl 개체에 의해 표시되는 항목의 형식을 반환합니다.

SHCONTF GetItemTypes() const;

Return Value

에 나열된 CMFCShellListCtrl항목의 형식을 포함하는 SHCONTF 값입니다.

설명

목록에 나열된 CMFCShellListCtrl항목의 유형을 설정하려면 CMFCShellListCtrl::SetItemTypes를 호출 합니다.

CMFCShellListCtrl::IsDesktop

CMFCShellListCtrl 개체에 표시되는 폴더가 데스크톱 폴더인지 여부를 확인합니다.

BOOL IsDesktop() const;

Return Value

표시된 폴더가 데스크톱 폴더이면 TRUE이고, 그렇지 않으면 FALSE입니다.

CMFCShellListCtrl::OnCompareItems

자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.

virtual int OnCompareItems(
    LPARAM lParam1,
    LPARAM lParam2,
    int iColumn);

매개 변수

[in] lParam1
[in] lParam2
[in] iColumn

Return Value

설명

CMFCShellListCtrl::OnFormatFileDate

프레임워크는 개체와 연결된 날짜를 문자열로 변환해야 하는 경우 이 메서드를 호출합니다.

virtual void OnFormatFileDate(
    const CTime& tmFile,
    CString& str);

매개 변수

tmFile
[in] 파일과 연결된 날짜입니다.

str
[out] 서식이 지정된 파일 날짜가 포함된 문자열입니다.

설명

CMFCShellListCtrl 클래스 개체에 파일과 연결된 날짜가 표시되면 해당 날짜를 문자열 형식으로 변환해야 합니다. 이 CMFCShellListCtrl 메서드를 사용하여 변환합니다. 기본적으로 이 메서드는 현재 로캘을 사용하여 날짜의 형식을 문자열로 지정합니다.

CMFCShellListCtrl::OnFormatFileSize

프레임워크는 개체의 크기를 문자열로 변환할 때 이 메서드를 호출합니다.

virtual void OnFormatFileSize(
    long lFileSize,
    CString& str);

매개 변수

lFileSize
[in] 프레임워크가 표시할 파일의 크기입니다.

str
[out] 서식이 지정된 파일 크기를 포함하는 문자열입니다.

설명

CMFCShellListCtrl 클래스 개체가 파일 크기를 표시해야 하는 경우 파일 크기를 문자열 형식으로 변환해야 합니다. 이 CMFCShellListCtrl 메서드를 사용하여 변환합니다. 기본적으로 이 메서드는 파일 크기를 바이트에서 킬로바이트로 변환한 다음 현재 로캘을 사용하여 크기를 문자열로 포맷합니다.

CMFCShellListCtrl::OnGetItemIcon

프레임워크는 이 메서드를 호출하여 셸 목록 항목과 연결된 아이콘을 검색합니다.

virtual int OnGetItemIcon(
    int iItem,
    LPAFX_SHELLITEMINFO pItem);

매개 변수

iItem
[in] 항목 인덱스입니다.

pItem
[in] 항목을 설명하는 LPAFX_SHELLITEMINFO 매개 변수입니다.

Return Value

성공하면 아이콘 이미지의 인덱스입니다. 함수가 실패하면 -1입니다.

설명

아이콘 이미지 인덱스는 시스템 이미지 목록을 기반으로 합니다.

기본적으로 이 메서드는 pItem 매개 변수를 사용합니다. iItem값은 기본 구현에서 사용되지 않습니다. iItem을 사용하여 사용자 지정 동작을 구현할 수 있습니다.

CMFCShellListCtrl::OnGetItemText

프레임워크는 셸 항목의 텍스트를 검색해야 하는 경우 이 메서드를 호출합니다.

virtual CString OnGetItemText(
    int iItem,
    int iColumn,
    LPAFX_SHELLITEMINFO pItem);

매개 변수

iItem
[in] 항목 인덱스입니다.

iColumn
[in] 관심 있는 열입니다.

pItem
[in] 항목을 설명하는 LPAFX_SHELLITEMINFO 매개 변수입니다.

Return Value

CString 항목과 연결된 텍스트가 들어 있는 A입니다.

설명

개체의 각 항목에는 CMFCShellListCtrl 하나 이상의 열에 텍스트가 있을 수 있습니다. 프레임워크에서 이 메서드를 호출할 때 관심 있는 열을 지정합니다. 이 함수를 수동으로 호출하는 경우 관심 있는 열도 지정해야 합니다.

기본적으로 이 메서드는 pItem 매개 변수를 사용하여 처리할 항목을 결정합니다. iItem값은 기본 구현에서 사용되지 않습니다.

CMFCShellListCtrl::OnSetColumns

프레임워크는 열의 이름을 설정하는 경우 이 메서드를 호출합니다.

virtual void OnSetColumns();

설명

기본적으로 프레임워크는 개체에 CMFCShellListCtrl 4개의 열을 만듭니다. 이러한 열의 이름은 이름, 크기, 형식수정됨입니다. 이 메서드를 재정의하여 열 수와 이름을 사용자 지정할 수 있습니다.

CMFCShellListCtrl::Refresh

CMFCShellListCtrl 개체를 새로 고치고 다시 칠합니다.

virtual HRESULT Refresh();

Return Value

S_OK 성공하면

설명

개체가 표시하는 항목 목록을 새로 고치려면 이 메서드를 호출합니다 CMFCShellListCtrl .

CMFCShellListCtrl::SetItemTypes

CMFCShellListCtrl 개체에 나열된 항목의 형식을 설정합니다.

void SetItemTypes(SHCONTF nTypes);

매개 변수

nTypes
[in] 개체가 CMFCShellListCtrl 지원하는 항목 형식 목록입니다.

설명

항목 유형 목록에 대한 자세한 내용은 SHCONTF를 참조하세요.

참고 항목

계층 구조 차트
클래스
CMFCListCtrl 클래스
CMFCShellTreeCtrl 클래스