制作自己个性的按钮--指定的文件夹找指定的后缀名文件并显示--修改对话框背景色
一、制作自己个性的按钮:添加现有项(BCMenu.h & BCMenu.cpp和 BtnST.h & BtnST.cpp)
CButtonST m_BtnRename;
m_BtnRename.SetIcon(IDI_ICON_Rename1,IDI_ICON_Rename);
m_BtnRename.SetAlign(CButtonST::ST_ALIGN_HORIZ);//字居右
// m_BtnRename.SetColor(CButtonST::BTNST_COLOR_FG_OUT, RGB( 255, 255, 255 ));
m_BtnRename.SetColor(CButtonST::BTNST_COLOR_FG_IN, RGB( 255, 0, 0 ));
m_BtnRename.DrawTransparent(TRUE);
m_BtnRename.DrawBorder(FALSE);
//m_BtnConnect.SetTooltipText( cls_kodLogic->GetMsgString(1700) );
二、在指定的文件夹里找指定的后缀名文件后显示在ClistCtrl m_list
void CGQCMMDlg::FindFile(CString pstr)//传绝对路径名
{ CFileFind finder;
LV_COLUMNCol;
CString idcstr;
BOOL bWorking = finder.FindFile(pstr + _T("\\*.* "));
while (bWorking)
{
bWorking = finder.FindNextFile();
// skip . and .. files; otherwise, we'd
// recur infinitely!
if(finder.IsDots()) //本级目录或父目录(.和..)
continue;
// if it's a directory, recursively search it
CString str = finder.GetFileName();
if(finder.IsDirectory())
{ //CString ff = finder.GetFilePath();//使用绝对路径,这样就可以查找子目录了
//FindFile(ff);
continue;
}
else
{ //str += _T("\n");
//m_edit.SetSel(-1, -1);
//((CListBox*)GetDlgItem(IDC_LIST4))->AddString(str); //加到list box,并显示
//得到文件后缀名
int nLen = str.GetLength() - finder.GetFileTitle().GetLength();
CString ii = str.Right(nLen);
if(ii == ".mpg" || ii == ".mp4" || ii == ".avi" || ii == ".vob"
||ii == ".MPG" || ii == ".MP4" || ii == ".AVI" || ii == ".VOB"
{
int nItem;
n++;
m_lvSong.mask = LVIF_TEXT;
m_lvSong.iItem = 0;
m_lvSong.iSubItem = 0;
m_lvSong.pszText = (LPSTR)(LPCTSTR)str;
nItem = this->m_list.InsertItem(&m_lvSong);
}
}
}
finder.Close();
}
三、修改对话框背景色,添加WM_CTLCOLOR消息函数
HBRUSH CGQCMMDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改DC 的任何属性
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
hbr = ::CreateSolidBrush(RGB(124,181,220));
pDC->SetBkColor(RGB(124,181,220));
//pDC->SetTextColor(RGB(255,0,0));
return hbr;
}
posted on 2012-03-20 15:01 langgonger 阅读(513) 评论(0) 收藏 举报
浙公网安备 33010602011771号