2011-12-24 8:55:55 阅读4 评论0 242011/12 Dec24
使用CTreeCtrl过程中,在展开一个节点后,如果节点的子节点很多,
TreeCtrl就会自动将展开的节点滚动到最顶端,有时候这个功能很不方便,
为了禁止这个功能,可以用以下的代码,重新将展开前最顶端的节点放到最顶端.
void CTreeCtrlEx::OnClick(NMHDR* pNMHDR, LRESULT* pResult)
{
CPoint pt;
GetCursorPos(&pt);
ScreenToClient(&pt);
HTREEITEM hItem = HitTest(pt);
2011-12-23 12:51:42 阅读6 评论0 232011/12 Dec23
使用SHAppBarMessage这个消息函数,可以取得任务栏在屏幕上位置与大小。
UINT_PTR SHAppBarMessage(
DWORD dwMessage,
PAPPBARDATA pData
);
调用指定参数dwMessage为ABM_GETTASKBARPOS,参数pData是一个APPBARDATA结构:
typedef struct _AppBarData {
DWORD cbSize;
HWND hWnd;
UINT uCallbackMessage;
2011-11-30 19:57:51 阅读17 评论0 302011/11 Nov30
void CChildView::OnPaint()
{
CPaintDC dc(this);
CBitmap bmp, *oldBmp;
BITMAP bm;
bmp.LoadBitmap(IDB_BITMAP1); // 从资源加载位图
bmp.GetObject(sizeof BITMAP, &bm); // 获取位图的宽高等信息
CDC memDC;
memDC.CreateCompatibleDC(&dc);
oldBmp = memDC.SelectObject(&bmp);
TransparentBlt(
dc.m_hDC,
0,0,
bm.bmWidth, bm.bmHeight,
memDC.m_hDC,
0,0,
bm.bmWidth, bm.bmHeight, // 这两个参数必须小于或等于位图的实际宽度和高度
2011-11-15 10:44:23 阅读31 评论0 152011/11 Nov15
在VC中使用GDI+从自定义资源中加载图片
resources文件夹上点右键,选“Insert”,在弹出的“Insert Resource”对话框上点按钮“Import”,
打开一个“Import Resource”对话框,在对话框的下面有一个“Open as”选择“Custom”,
然后选择要导入的图片文件,在“Resource type”里输入导入的资源类型,
比如png文件,就输入“png”,bmp文件,就输入“bmp”(不带引号),或者从文本框下的列表框选择也可以。
完成后,点OK。
BOOL ImageFromIDResource(UINT nID, LPCTSTR sTR, Image * & pImg);
nID 资源ID
sTR 资源类型:"bmp","png","gif",...
2011-10-25 14:12:30 阅读8 评论0 252011/10 Oct25