⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 selectdlg.cpp

📁 彩信浏览器
💻 CPP
字号:
// SelectDlg.cpp : implementation file//#include "stdafx.h"#include "resource.h"#include "SelectDlg.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif/////////////////////////////////////////////////////////////////////////////// CSelectDlg dialogCSelectDlg::CSelectDlg(CWnd* pParent /*=NULL*/)	: CDialog(CSelectDlg::IDD, pParent){	//{{AFX_DATA_INIT(CSelectDlg)		// NOTE: the ClassWizard will add member initialization here	//}}AFX_DATA_INIT	m_dir = TEXT("\\Windows\\Ambulant");	m_filename = TEXT("");}void CSelectDlg::DoDataExchange(CDataExchange* pDX){	CDialog::DoDataExchange(pDX);	//{{AFX_DATA_MAP(CSelectDlg)		// NOTE: the ClassWizard will add DDX and DDV calls here	//}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CSelectDlg, CDialog)	//{{AFX_MSG_MAP(CSelectDlg)	ON_LBN_DBLCLK(IDC_FILE_LIST, OnDblclkList1)	ON_LBN_SELCHANGE(IDC_FILE_LIST, OnSelchangeList1)	ON_CBN_CLOSEUP(IDC_DIR_COMBO, OnCloseupDirCombo)	//}}AFX_MSG_MAPEND_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////// CSelectDlg message handlersvoid CSelectDlg::OnDblclkList1() {	// TODO: Add your control notification handler code here	}void CSelectDlg::OnSelchangeList1() {	CListBox *pList = (CListBox*) GetDlgItem(IDC_FILE_LIST);	int nIndex = pList->GetCurSel();	if(nIndex>=0) {		LPTSTR  sb = m_filename.GetBuffer(MAX_PATH);		pList->GetText(nIndex, sb);		m_filename.ReleaseBuffer(); 	}}BOOL CSelectDlg::OnInitDialog() {	CDialog::OnInitDialog();		// TODO: Add extra initialization here	CComboBox *pCombo = (CComboBox*) GetDlgItem(IDC_DIR_COMBO);		pCombo->AddString(TEXT("Ambulant documents"));	pCombo->SetCurSel(0);	FillList(TEXT("*.*"));	CListBox *pList = (CListBox*) GetDlgItem(IDC_FILE_LIST);	if(pList->GetCount()>0) {		pList->SetCurSel(0);		OnSelchangeList1();	}	pList->SetFocus();	return FALSE;  // return TRUE unless you set the focus to a control	              // EXCEPTION: OCX Property Pages should return FALSE}inline bool endsWith(const CString& s, LPCTSTR p) {	if(!p) return true;	LPCTSTR rend = p - 1;	p += _tcslen(p) - 1;	for(int i = s.GetLength()-1;i>=0 && p != rend;i--,p--) {		if(*p != s[i]) break;	}	return p == rend;}void CSelectDlg::FillList(LPCTSTR ext) {    WIN32_FIND_DATA findData;	memset(&findData, 0, sizeof(findData));    HANDLE fileHandle = FindFirstFile(m_dir + TEXT("\\") +  ext, &findData);	if(fileHandle == INVALID_HANDLE_VALUE) return;	CListBox *pList = (CListBox*) GetDlgItem(IDC_FILE_LIST);	while(FindNextFile(fileHandle, &findData)) {		if((findData.dwFileAttributes &  FILE_ATTRIBUTE_DIRECTORY) == 0) {			CString fn = findData.cFileName;			if(endsWith(fn, TEXT(".smil")) || 				endsWith(fn, TEXT(".smi")) || 				endsWith(fn, TEXT(".grins")))			pList->AddString(fn);		}	}	FindClose(fileHandle);}CString CSelectDlg::GetPathName() {	if(!m_filename.IsEmpty())		return m_dir + TEXT("\\") + m_filename;	return TEXT("");}void CSelectDlg::OnCloseupDirCombo() {	CListBox *pList = (CListBox*) GetDlgItem(IDC_FILE_LIST);	pList->ResetContent();	FillList(TEXT("*.*"));	if(pList->GetCount()>0) pList->SetCurSel(0);	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -