亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? folderdlg.cpp

?? 實時監控
?? CPP
字號:
	/////////////////////////////////////////////////////////////////////////////
/* 
DESCRIPTION:
	CFolderDialog  - Folder Selection Dialog Class	
	http://www.codeproject.com/dialog/cfolderdialog.asp

NOTES:
	Copyright(C) Armen Hakobyan, 2002
	mailto:armenh@web.am
	
VERSION HISTORY:
	24 Mar 2002 - First release
	30 Mar 2003 - Some minor changes
				- Added missing in old Platform SDK new flag definitions  
				- Added support for both MFC 6.0 and 7.0
				- Added OnIUnknown handler for Windows XP folder filtration
				- Added SetExpanded and SetOKText and GetSelectedFolder functions
	24 May 2003 - Added OnSelChanged implementation
*/
/////////////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "FolderDlg.h"

/////////////////////////////////////////////////////////////////////////////

#ifndef BFFM_VALIDATEFAILED
	#ifndef UNICODE
		#define BFFM_VALIDATEFAILED		3
	#else
		#define BFFM_VALIDATEFAILED		4	
	#endif
#endif

#ifndef BFFM_IUNKNOWN
	#define BFFM_IUNKNOWN				5
#endif

/////////////////////////////////////////////////////////////////////////////
// CFolderDialog

IMPLEMENT_DYNAMIC( CFolderDialog, CDialog )

CFolderDialog::CFolderDialog( IN LPCTSTR lpszTitle		/*NULL*/,
							  IN LPCTSTR lpszSelPath	/*NULL*/,
							  IN CWnd*	 pParentWnd		/*NULL*/,
							  IN UINT	 uFlags			/*BIF_RETURNONLYFSDIRS*/ )
			 : CCommonDialog( pParentWnd )
			 , m_hWnd( NULL )
{
	::ZeroMemory( m_szFolPath, MAX_PATH );
	::ZeroMemory( m_szSelPath, MAX_PATH );
	::ZeroMemory( &m_bi, sizeof( BROWSEINFO ) );

	if( lpszSelPath != NULL )
		SetSelectedFolder( lpszSelPath );
	
	// Fill data	
	m_bi.hwndOwner	= pParentWnd->GetSafeHwnd();
	m_bi.pidlRoot	= NULL;	
	m_bi.lpszTitle	= lpszTitle;
	m_bi.ulFlags	= uFlags;
	m_bi.lpfn		= (BFFCALLBACK)BrowseCallbackProc;
	m_bi.lParam		= (LPARAM)this;

	// The size of this buffer is assumed to be MAX_PATH bytes
	m_bi.pszDisplayName = new TCHAR[ MAX_PATH ];
	::ZeroMemory( m_bi.pszDisplayName, MAX_PATH * sizeof( TCHAR ) );
}

CFolderDialog::~CFolderDialog( void )
{
	_delete2( m_bi.pszDisplayName );	
	::ZeroMemory( &m_bi, sizeof( BROWSEINFO ) );	
}

BEGIN_MESSAGE_MAP( CFolderDialog, CCommonDialog )
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CFolderDialog message handlers

#if ( _MFC_VER < 0x0700 )
	INT		CFolderDialog::DoModal( void )
#else
	INT_PTR CFolderDialog::DoModal( void )
#endif
{
	ASSERT_VALID( this );	
	ASSERT( m_bi.lpfn != NULL );

	m_bi.hwndOwner = PreModal();	
	INT_PTR nRet   = -1;
	LPITEMIDLIST lpItemIDList = ::SHBrowseForFolder( &m_bi );

	if( lpItemIDList != NULL )
	{
		if( ::SHGetPathFromIDList( lpItemIDList, m_szFolPath ) )
		{
			IMalloc* lpMalloc = NULL;
			if( SUCCEEDED( ::SHGetMalloc( &lpMalloc ) ) )
			{
				lpMalloc->Free( lpItemIDList );
				lpMalloc->Release();
				lpMalloc = NULL;
			}
			nRet = IDOK;
		}
		else
			nRet = IDCANCEL;

		lpItemIDList = NULL;
	}

	PostModal();
	return nRet;	
}

/////////////////////////////////////////////////////////////////////////////
// Overridables:

void CFolderDialog::OnInitialized( void )
{
	if( ::lstrlen( m_szSelPath ) > 0 )
		SetSelection( m_szSelPath );
}

void CFolderDialog::OnSelChanged( IN LPITEMIDLIST lpItemIDList )
{
	if( m_bi.ulFlags & BIF_STATUSTEXT )
	{
		TCHAR szSelFol[ MAX_PATH ] = { 0 };
		if( ::SHGetPathFromIDList( lpItemIDList, szSelFol ) )	
			SetStatusText( szSelFol );
	}
}

INT CFolderDialog::OnValidateFailed( IN LPCTSTR /*lpszFolderPath*/ )
{	
	::MessageBeep( MB_ICONHAND );
	return 1; // Return 1 to leave dialog open, 0 - to end one
}

void CFolderDialog::OnIUnknown( IN IUnknown* /*lpIUnknown*/ )
{
}

/////////////////////////////////////////////////////////////////////////////
// Callback function used with the SHBrowseForFolder function. 

INT CALLBACK CFolderDialog::BrowseCallbackProc( HWND hWnd, 
					UINT uMsg, LPARAM lParam, LPARAM lpData )
{
	CFolderDialog* pThis = (CFolderDialog*)lpData;
	pThis->m_hWnd = hWnd;
	INT nRet = 0;

	switch( uMsg )
	{
	case BFFM_INITIALIZED:
		pThis->OnInitialized();
		break;
	case BFFM_SELCHANGED:
		pThis->OnSelChanged( (LPITEMIDLIST)lParam );
		break;
	case BFFM_VALIDATEFAILED:
		nRet = pThis->OnValidateFailed( (LPCTSTR)lParam );
		break;
	case BFFM_IUNKNOWN:
		pThis->OnIUnknown( (IUnknown*)lParam );
		break;
	default:
		ASSERT( FALSE );
		break;
	}

	pThis->m_hWnd = NULL;
	return nRet;	
}

/////////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产盗摄视频一区二区三区| 欧美疯狂性受xxxxx喷水图片| 狠狠色丁香婷综合久久| 99re热这里只有精品视频| 一本久久a久久精品亚洲| 2023国产一二三区日本精品2022| 国产精品久久久久影院色老大 | 国产精品欧美一级免费| 亚洲精品国产高清久久伦理二区| 欧美日韩在线免费视频| 国产精品网站在线| 久久精品国产亚洲5555| 8x福利精品第一导航| 中文字幕佐山爱一区二区免费| 激情久久久久久久久久久久久久久久| 欧美曰成人黄网| 亚洲人妖av一区二区| 粉嫩一区二区三区性色av| 精品国产91亚洲一区二区三区婷婷 | 国产精品成人免费在线| 国产美女精品在线| 精品国产污网站| 美女一区二区在线观看| 欧美一区二区私人影院日本| 亚洲成av人影院在线观看网| 欧洲精品在线观看| 亚洲影院理伦片| 在线观看免费一区| 亚洲一二三四区| 欧美主播一区二区三区美女| 亚洲日本护士毛茸茸| 一本色道久久综合狠狠躁的推荐 | 日本成人在线电影网| 欧美日韩不卡视频| 日韩成人av影视| 337p亚洲精品色噜噜噜| 久久99国产精品尤物| 精品va天堂亚洲国产| 国产一区二区三区不卡在线观看| 久久蜜桃一区二区| 国产精品18久久久| 中文天堂在线一区| 在线观看日韩电影| 日韩vs国产vs欧美| 精品福利在线导航| 成人小视频在线| 一区二区三区在线视频观看58| 欧美日韩一区二区在线视频| 麻豆精品一区二区综合av| 欧美精品一区二区久久婷婷 | 亚洲欧美在线另类| 欧美视频一区二区| 国产在线看一区| 亚洲欧美日韩精品久久久久| 欧美军同video69gay| 国产精品一区二区久久精品爱涩| 国产精品久久久久久久久动漫| 在线免费观看日韩欧美| 亚洲视频中文字幕| 91在线视频在线| 亚洲精品乱码久久久久久| 5566中文字幕一区二区电影| 日韩av中文在线观看| 国产女主播视频一区二区| 91色porny在线视频| 日本91福利区| 国产精品第四页| 欧美日韩一区三区| 成人国产精品免费观看| 免费人成网站在线观看欧美高清| 国产拍欧美日韩视频二区| 欧美亚洲一区二区在线观看| 国产精品77777| 日韩和欧美一区二区三区| 国产欧美日韩精品a在线观看| 欧美视频一区二区三区四区| 国产成人av自拍| 日韩高清不卡一区二区| 成人免费在线观看入口| 日韩一区二区三区视频在线观看| 一本大道久久精品懂色aⅴ| 捆绑变态av一区二区三区| 国产精品精品国产色婷婷| 日韩视频一区二区三区在线播放| 91丨九色丨黑人外教| 激情综合一区二区三区| 亚洲国产成人精品视频| 国产欧美一区二区精品性| 日韩一区二区在线观看视频播放 | 免费在线一区观看| 亚洲精品美国一| 久久新电视剧免费观看| 欧美一级黄色录像| 欧美日韩中文精品| 在线精品视频免费播放| 成人毛片视频在线观看| 国产乱码一区二区三区| 精品亚洲aⅴ乱码一区二区三区| 亚洲欧美视频在线观看视频| 国产精品免费看片| 国产日韩一级二级三级| 久久精品亚洲精品国产欧美kt∨| 欧美一区午夜视频在线观看| 在线不卡一区二区| 欧美日产国产精品| 欧美蜜桃一区二区三区| 精品视频一区二区三区免费| 色呦呦国产精品| 欧美综合色免费| 欧美在线不卡视频| 色av一区二区| 在线欧美小视频| 欧美日韩国产片| 欧美三级电影在线看| 欧美日韩免费在线视频| 91精品国产色综合久久不卡蜜臀| 欧美日韩在线播放三区四区| 欧美日本一区二区在线观看| 欧美日韩情趣电影| 日韩欧美亚洲另类制服综合在线| 欧美高清一级片在线| 欧美一级在线免费| 久久奇米777| 亚洲国产成人一区二区三区| 国产精品免费视频一区| 综合网在线视频| 一区二区成人在线| 喷水一区二区三区| 激情小说欧美图片| 成人天堂资源www在线| 99久久婷婷国产综合精品| 欧洲视频一区二区| 欧美日高清视频| 国产亚洲欧美激情| 亚洲欧美经典视频| 丝袜亚洲精品中文字幕一区| 精品一区二区精品| av在线一区二区三区| 欧美性xxxxxx少妇| 精品久久久久久久久久久久久久久久久| 久久久精品黄色| 亚洲精品国产一区二区精华液| 午夜精品成人在线| 国产成人精品亚洲777人妖| 色婷婷激情一区二区三区| 久久视频一区二区| 亚洲天堂中文字幕| 欧美96一区二区免费视频| 国产成人三级在线观看| 欧美最新大片在线看| 久久久美女艺术照精彩视频福利播放| 亚洲人成电影网站色mp4| 日精品一区二区三区| 成人免费看片app下载| 欧美日韩中字一区| 国产日韩欧美精品一区| 亚洲电影在线播放| 岛国精品一区二区| 在线电影国产精品| 中文字幕亚洲在| 精品无码三级在线观看视频| 日本高清不卡一区| 欧美激情一区在线观看| 日本91福利区| 欧美探花视频资源| 国产精品久久久久久福利一牛影视 | 亚洲欧美欧美一区二区三区| 精品在线播放午夜| 欧美专区在线观看一区| 日本一区二区三区四区在线视频 | 91影视在线播放| 精品少妇一区二区三区视频免付费 | 国产成人精品一区二| 欧美一级国产精品| 亚洲一区二区免费视频| av亚洲产国偷v产偷v自拍| 久久女同性恋中文字幕| 日韩二区三区在线观看| 欧洲激情一区二区| 亚洲精选免费视频| 成人做爰69片免费看网站| 久久色中文字幕| 黄网站免费久久| 精品久久免费看| 精品无码三级在线观看视频| 日韩午夜av电影| 美女视频第一区二区三区免费观看网站| 欧美在线不卡视频| 欧美一二区视频| 91啪在线观看| 欧美在线高清视频| 亚洲欧美另类久久久精品2019| 97精品久久久久中文字幕| 亚洲欧洲一区二区三区| www.日韩在线| 国产精品乱码人人做人人爱| 成人免费毛片嘿嘿连载视频| 国产精品美女久久久久aⅴ| 国产成人亚洲综合a∨猫咪| 色综合一个色综合亚洲|