- 博客(13)
- 资源 (3)
- 收藏
- 关注
原创 关于跑多线程程序的VC++的设置
<br />参数没有设置好[Project] --> [Settings] --> 选择"C/C++"属性页, 在Category中选择Code Generation, 再在Use run-time library中选择Debug Multithreaded或者multithreaded
2011-05-12 16:32:00
417
原创 第八章 类
<br />成员函数在调用时已经捆绑了对象,其实已经含有对象参数了。<br />成员函数一定从属于类,不能独立存在,因此在定义成员函数时,必须在前面冠以类名。<br />定义完一个类以后,一定要加上一个":",切记,切记。<br />在类中实现的成员函数被默认为内联函数,达到最佳的运行效果,但由于内联函数的实现的机制,导致了不是所有的成员函数都要在类中实现,一般短小,不含循环的函数在类中实现。<br />使用对象指针:一个类可以创建无数个对象,任何一个对象可以使用该类的操作,即调用该类的成员函数,此对象和彼
2010-11-28 20:55:00
422
原创 进度栏编程
<br />MFC中进度栏有一个类 CProgressCtrl。<br />要使用进度栏,先建立一个进度栏,然后调用Create函数。<br />获得状态栏的区域,可以用CStatusBar的GetItemRect函数来完成。<br />cmainframe类的oncreate函数是在响应框架窗口的WM_CREATE消息时调用的,只用这个函数执行完成以后,才能够获得窗口状态栏上窗格的矩形区域。我们的思路是,自定义一个消息,然后在cmainframe类的ONCREATE函数中在其返回之前发送这条消息,最后在这
2010-11-21 20:30:00
374
原创 模拟动画图标
<br /> 就是左上角的图标按一定的时间间隔进行变化。<br /> 1 加载ico图片放到res之中,然后载入即可,用函数LoadIcon函数<br /> 2 定时器settimer的处理<br /> 添加一个消息处理函数WM_TIMER,调用SetClassLong函数即可<br />
2010-11-19 16:36:00
349
原创 工具栏编程
<br />1 在工具栏上添加和删除按钮<br /> 插入资源,可以DIY图标的样子,然后其在下拉菜单下的ID号与其ID号一样<br />2 创建工具栏<br /> 两种方法<br />一:创建工具栏资源,也是资源中插入,DIY什么的。<br /> 构造CToolBar对象,<br /> 调用create函数或者createEx函数创建windows工具栏,并把她与已创建的CToolBar对象关联起来<br /> 调用LoadToolBar函数加载工具栏资源<br />二:构造CT
2010-11-19 16:31:00
296
原创 修改应用程序的窗口
<br />修改应用程序窗口的外观<br />1 在窗口创建之前修改<br /> 我们应该在CMainFrame类的PreCreateWindow成员函数之中进行。PreCreateWindow是一个虚函数,我们要重写他。<br />在PreCreateWindow函数中修改CREATESTRUCT这个结构体的成员(结构定义了传递给应用程序的窗口过程的初始化参数),<br />在单文档界面(SDI)应用程序中,框架的默认窗口样式是WS_OVERLAPPEDWINDOW和FWS_ADDTOTITLE(指把
2010-11-18 21:18:00
649
原创 属性表单和向导的创建
<br /> 类CPropertyPage的对象表示一张属性表的各页,或者说是被看作是标签对话框。同标准对话框一样,要为属性表中每一页从CPropertyPage类中派生一个新类。要使用CPropertyPage派生对象,首先要创建一个CPropertySheet对象,然后为属性表中的每一页创建一个对象。为表中的每一页调用CPropertySheet::AddPage函数,然后对一个模式属性表调用CPropertySheet::DoModal函数来显示此属性表。对一个非模式属性表调用CPr
2010-11-17 11:16:00
700
原创 逃跑按钮的实现
<br /> 基于对话框的应用程序和SDI应用程序之间的区别:基于对话框的应用程序没有从CView类派生出来的视类,也没用从CFrameWnd类派生出来的框架类,以及从CDocument类派生出来的文档类,它只用从CDialog类派生出来的对话框类,,这类应用程序的窗口就是一个对话框界面。只用三个类,CAboutDlg,用来显示一个对话框,CApp,代表应用程序本身,CDlg,基于对话框的MFC应用程序的主界面。<br /> 首先要捕获鼠标移动消息,那有哪个类来捕获消息呢?如果是对话框来
2010-11-12 10:14:00
1251
原创 输入焦点的传递
<br />实现的功能是:按下ENTER键,焦点转移到下一个编辑框,需要重写默认的IDOK按钮的消息响应函数。<br />可以通过捕获键盘按键消息,然后在此消息响应函数中把输入焦点移动到下一编辑框控件来实现。有两种实现方式<br />1::为编辑框控件生成一个类,然后利用这个类来捕获按键消息<br />2::修改编辑框控件的窗口过程函数,就是自己编写一个编辑框控件的窗口过程,然后替换MFC提供的默认的编辑框控件窗口过程函数。<br />我们知道,窗口的所有消息都要到该窗口的窗口过程函数中来报道,因此,在这个
2010-11-10 19:08:00
944
原创 对话框伸缩功能的实现
<br />就是对指定的一块区域,切掉或延展。<br />一个矩形是怎么确定的呢?有左上角和右下角的点确定的。对一块矩形区域,切掉下方的一块小矩形,左上角的点坐标是不变的,右下角的点的横坐标是不变的,变的只是纵坐标。<br />用到的函数:<br />1::BOOL GetWindowRect(HWND hWnd,LPRECT lpRect),获得指定窗口的大小和位置,参数:hWnd:窗口句柄,默认下指的是当前窗口,若不是默认,则先获得要欲用的窗口的句柄,通过函数GetDlgItem来获得,然后再调用Get
2010-11-10 18:45:00
479
原创 关于CFileDialog的一些知识
<br /> <br /><br /> VC中使用CFileDialog进行文件操作,一般来讲你不需要派生新的类,因为基类已经提供了常用的功能。而且在创建并等待对话框结束后你可以通过成员函数得到用户在对话框中的选择。 <br /> CFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下: <br /> CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt =
2010-11-09 21:50:00
360
原创 访问对话框控件的7种方式
<br />1:首先获取静态文件控件对象(使用GetDlgItem),然后使用GetWindowText来获取控件的文本,设置文本用SetWindowText.<br />2:函数GetDlgItemText,将返回对话框中指定ID的控件上的文本。就是将GetDlgItem和GetWindowText两个函数的功能合成在一起,<br /> SetDlgItemText,设置对话框中指定ID控件上的文本。<br />3:函数GetDlgItemInt,返回指定控件的文本,并将其转换为一个整型数值。Set
2010-11-08 22:18:00
543
原创 负号的优先级比&来的高
<br />编程之美:求二进制数中的1的个数:第二个补充习题<br />一开始代码如下:<br />#include <stdio.h><br />#include <math.h><br />int main()<br />{<br /> int m,n;<br /> int flag=0;<br /> <br /> printf("input m and n:");<br /> scanf("%d%d",&m,&n);<br />
2010-11-07 19:16:00
792
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人