[url=http://www.bdqn1.com]VC雕虫小技集(七)[/url]

1,图片控件

右键属性 type : bitmap

你直接选image也行

IDB_BITMAP1位图的ID

m_ctrl 是与图片控件相关联的控制型变量

void CDlg2Dlg::OnButton1()

{

CBitmap bitmap1;

bitmap1.LoadBitmap(IDB_BITMAP1);

m_ctrl.SetBitmap(bitmap1);

}

void CDlg2Dlg::OnButton2()

{

CBitmap bitmap2;

bitmap2.LoadBitmap(IDB_BITMAP2);

m_ctrl.SetBitmap(bitmap2);

}



2, 什么我给控件赋变量时看不到cortrol ID?

1,单选按钮,把group钩上.

2,静态控件把ID改成非IDC_STATIC.



3, 大小键盘的ascll码

0-9 不同,但+,-相同.



4,显示键盘输入的字符,尽量避免闪烁

void CSdiView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)

{

CDC * pDC = GetDC();

StringData += nChar;

CRect r(0,0,0,0);

pDC->DrawText(StringData,&r,DT_LEFT|DT_CALCRECT);

InvalidateRect(r);

CView::OnChar(nChar, nRepCnt, nFlags);

}

void CSdiView::OnDraw(CDC* pDC)

{

pDC->DrawText(StringData,CRect(0,0,1000,1000),DT_LEFT);

}



5,对话框A domodal()出一个对话框B,点击B一个按钮以后,要求调用A的类中的一个函数。



在b的响应函数中处理:

((A *)GetParent())->fun();

在b中inlcude A所在的文件



6, 删除文件夹及包含的文件

#include 

void DeleteDirFile(CString sPath)

{

WIN32_FIND_DATA fd;

HANDLE hFind = ::FindFirstFile(sPath + "*.*",&fd);



if (hFind != INVALID_HANDLE_VALUE)



while (::FindNextFile(hFind,&fd))

{

//判断是否为目录

if (fd.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY)

{

CString name;

name = fd.cFileName;

//判断是否为.和..

if ((name != ".") && (name != ".."))