- 博客(17)
- 资源 (7)
- 收藏
- 关注
原创 CFileFind类
CFileFind类的使用总结1、CFileFind类的声明文件保存在afx.h头文件中。2、该类的实现的功能:执行本地文件的查找(查找某个具体的文件,查找某类文件x*.x*,查找所有文件*.*)3、CFileFind类是CGopherFileFind和CFtpFileFind类的基类。4、CFileFind类的构造函数::CFileFind()和关闭函数::Close()我会成对使用。5、CFi
2009-10-30 15:17:00 455
转载 NMHDR
NMHDR = Notify Message Handler NMHDR 结构包含下列成员: typedef struct tagNMHDR { HWND hwndFrom; // handle of control sending message UINT idFrom;// identifier
2009-10-30 14:02:00 898
转载 全面解读WM_NOTIFY NMHDR结构
VC中的消息的分类有3种:窗口消息、命令消息和控件通知消息,我们这里要谈的是最后一种:控件通知消息。 控件通知消息,是指这样一种消息,一个窗口内的子控件发生了一些事情,需要通知父窗口。通知消息只适用于标准的窗口控件如按钮、列表框、组合框、编辑框,以及Windows公共控件如树状视图、列表视图等。例如,单击或双击一个控件、在控件中选择部分文本、操作控件的滚动条都会产生通知消息。 她类似于命令消
2009-10-30 13:57:00 1087 3
原创 更换背景颜色 OnEraseBkgnd,PatBlt 介绍
更换背景颜色,是用brush BOOL CChatView::OnEraseBkgnd(CDC* pDC){ // TODO: Add your message handler code here and/or call default CBrush brush(RGB(255,255,255)); CBrush *pOldBrush = pDC->SelectObject(&brush
2009-10-28 11:21:00 4333
原创 NM _ 开头的消息,WM _ 开头的消息有什么区别
WM_x是标准的消息定义,或者自定义消息。NM_x是通知消息,一般用来子控件通知父窗口的消息。这个是为了方便MFC程序的开发。比如一个对话框窗口,内有一个列表框控件。如果在列表框里面点击鼠标,那么系统首先把消息送给线程,线程预处理后再发给此列表框一个WM_LBUTTONDOWN消息,此列表框收到后,可能做处理可能不做处理,然后再生成一个 NM_x通知消息 发送给其父窗口。这样做的目的,是方便用
2009-10-28 10:13:00 1559
转载 添加状态栏
方法一:1.添加成员变量CStatusBarCtrl m_StatusBar;2.在OnInitDialog()中加入: m_StatusBar.Create(WS_CHILD|WS_VISIBLE|SBT_OWNERDRAW, CRect(0,0,0,0), this, 0); int strPartDim[3]= {100,
2009-10-27 11:55:00 510
转载 学习ListCtrl 的用法
ListCtrl在工作中,常常用到,也常常看到大家发帖问怎么用这个控件, 故总结了一下自己的使用经验,以供参考使用。 先注明一下,这里,我们用m_listctrl来表示一个CListCtrl的类对象,然后这里我们的ListCtrl都是report形式,至于其他的如什么大图标,小图标的暂时不讲,毕竟report是大众话的使用。其次,我们这里用条款一,条款二来描述第一点,第二点,这个
2009-10-27 11:43:00 535
转载 动态创建Menu 菜单
动 态 创 建 级 联 菜 单 菜单是Windows的标准界面元素,几乎所有的Windows应用程序中都有它的身影。MFC中的类CMenu对它进行了封装,使其使用起来更加简便。要在程序中使用菜单也很简单,一般分以下几步:第一步先用VC的菜单编辑器创建一个菜单资源,给它赋予我们自己定义的ID,第二步在程序中构造一个CMenu类的对象,用CMenu::Loa
2009-10-26 14:39:00 1639
原创 SetTimer定时器1
UINT SetTimer(UNIT nIDEvent, UINT nElapse, void (CALLBACK EXPORT* lpfnTimer)(HWND,UINT ,UINT,DWORD)); 第一个参数是标识定时器本身的ID第二个参数是设定的时间第三个参数是回调函数, 如果第三个参数设置为NULL 则定时器会放入消息队列中会被CWnd 对象调用。(同过WM TI
2009-10-22 10:14:00 455
原创 移动光标位置,响应退格和回车按钮
//移动插入符,鼠标按下void CView::OnLButtonDown(UINT nFlags,CPoint point){ SetCaretPos(point);//设置位置 m_strLine.empty(); m_ptOrigin =point;} //响应OnChar消息,退格和回车和其它按键void CView::OnChar(UINT nChar,...){ CC
2009-10-21 13:51:00 794
原创 输入插入光标符
int CTextView::OnCreate(LPCREATESTRUCT lpCreateStruct){ //add you cold,设置光标大小 CClientDC dc(this); TEXTMETRIC tm; dc.GetTextMetrics(&tm); //获取当前dc里面字体的信息 CreateSolidCaret(tm.tmAveCharWidth/8,tm.tmHeig
2009-10-21 13:47:00 681
原创 按下鼠标绘制连续的线
//响应LButtonDown函数m_bDraw = TRUE; //响应LButtonUp函数m_bDraw = FALSE; //响应MOUSEMOVE 函数,添加画笔,绘制图形,还原画笔 CClientDC dc(this);CPen pen(PS_SOLID,1,RGB(255,0,0));CPen *pOldPen = dc.Selec
2009-10-20 19:05:00 494
原创 static 类型变量和函数
static变量必须在类外面初始化static函数内部只可以调用static成员(可以从内存模型理解,static成员不需要构造对象就可以存在,而非static成员需要构造对象才行,两者存在的先后顺不一样,故无法调用非static成员)static函数可直接被类调用 class point{public: void add() { init() }
2009-10-20 18:35:00 545
原创 CDC CClientDC CPen CBrush使用
//创建一个DC画一条线,然后释放DCCDC *pDC = GetDC();pDC->MoveTo(m_ptOrigin);pDC->LineTo(point);ReleaseDC(pDC); //创建一个ClientDC画一条线,不用释放DCCClientDC dc(this);dc.MoveTo(m_ptOrigin);dc.LineTo(point); //创建一个C
2009-10-20 10:22:00 2710 1
原创 获取子窗口的位置 GetWindowRect
GetWindowRect() 得到的是在屏幕坐标系下的RECT(即以屏幕左上角为原点)GetClientRect() 得到的是在客户区坐标系下的RECT(即以所在窗口左上角为原点,去掉了标题栏计算,仅仅是个大小,返回值的左上角永远为0,0) ScreenToClient() 就是把屏幕坐标系下的RECT坐标转换为客户区坐标系下的RECT坐标。由于知道ID,如何通
2009-10-20 10:13:00 3550
转载 MFC 树控件,也挺麻烦的
搞个树控件搞了两天...唉我晕。无奈太菜了,保存下了做个备忘,以后多看看 树型视的三个结构TVINSERTSTRUCT、TVITEM、NMTREEVIEW TVINSERTSTRUCT 包含添加新项到树形视控件所使用的信息。这个结构被TVM_INSERTITEM消息使用。这个结构与TV_INSERTSTRUCT结构是一样的,但它已经按当前的命名习惯重命名了。typed
2009-10-14 18:16:00 3949
原创 MFC 滚动条
今天折腾了一天就学了个滚动条,没有想到挺麻烦的........虽然老师说以后用控件,现在做真够费劲的! 为窗口添加滚动条 为窗口添加滚动条非常的简单,只需在创建窗口时指定窗口的样式中加上WS_VSCROLL或WS_HSCROLL或是两者皆有即可。 设置选项 通过SetScrollInfo函数来设置滚动条 使滚动条大小适应窗口变化变化在WM_ON
2009-10-14 18:11:00 9106 1
贪食蛇 C++ 源码
2009-05-20
《编程高手箴言》 梁肇新 箴言
2009-05-20
《C语言描述——数据结构算法与应用》绝对高清版.rar
2009-05-19
ce3100-datasheet.rar
2009-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人