
MFC
似水如风
一步一步往上爬
展开
-
MFC程序最小化到系统托盘
为了使MFC程序(SDI,MDI,DLG)均能最小化到系统托盘,这里运用消息机制来实现系统托盘效果。 那么什么是托盘呢?所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。 怎么实现呢?这里需要运用到的Windows API函数:原创 2011-11-17 10:20:12 · 13520 阅读 · 2 评论 -
MFC编程小技巧
一、用按钮调用计算机的计算器程序,虽然就一句话,但是有的时候在制作一些编码软件的时候却很方便,轻轻松松一个按钮可以省去不少事儿。void CBtnCalcDlg::OnBtncalc() { // TODO: Add your control notification handler code here ShellExecute(this->m_hWnd,"open","calc原创 2012-10-30 07:55:26 · 1296 阅读 · 0 评论 -
华为上机试题+答案(更新......)
1、删除子串,只要是原串中有相同的子串就删掉,不管有多少个,返回子串个数。#include //不能对指针或者常量字符串用sizeof求长度;常量转化为非常量字符串,需要强制类型转换;sizeof求的字符串长度是包括'\0'这个隐藏元素的;int delete_sub_str(const char *str,const char *sub_str,char *result)原创 2012-09-24 21:26:11 · 3098 阅读 · 0 评论 -
在已经做好的MFC项目中添加一个登陆界面
在InitIistance中添加一下代码: BOOL CCouseApp::InitInstance(){ AfxEnableControlContainer(); // Standard initialization // If you are not using these features and wish to reduce the size // of your原创 2012-03-13 23:25:42 · 11935 阅读 · 4 评论 -
MFC中基于对话框程序快捷键的实现
MFC中基于SDI和MDI的程序,默认情况下有快捷键资源,直接建立快捷键与消息的映射,就能实现程序的快捷键,而基于对话框的程序默认情况下没有快捷键资源,鉴于网友问到这个问题,下面我就分别用两种方法来实现。 一是在PreTranslateMessage函数中,判断键盘的按键消息,比如快捷键是Ctrl + Q,我们就检测按键消息的Ctrl键和Q是否同时按下就可以了。BO原创 2011-11-10 11:26:25 · 1079 阅读 · 0 评论 -
两种线程方式实现进度条
线程的主要操作过程如下:创建线程,线程信息的获取,终止线程。 MFC中,线程分为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对原创 2011-11-25 16:19:28 · 7749 阅读 · 4 评论 -
Hook使用方法
大致步骤如下:1、安装一个鼠标监视钩子2、指向相应的钩子过程3、指定线程由当前进程创建4、指定于钩子过程相关的线程ID需要函数:HHOOK SetWindowsHookEx( int idHook, // hook type HOOKPROC lpfn, // hook procedure HINSTANCE hMod, // h原创 2011-11-03 22:54:48 · 5891 阅读 · 0 评论 -
MFC定时器实现类似QQ桌面自动隐藏效果
所谓QQ自动隐藏效果无非就是将对话框放到屏幕外面就行了。大致步骤:1、建立MFC对话框项目;2、为对话框映射定时器消息;3、开启定时器;4、定义定时器操作函数;5、关闭定时器;具体步骤:1、映射定时器WM_TIMER消息可以用多种方法,一种是下面的方法,还有一种就是使用类向导;2、映射成功后会自动生成以下代码(已经在里面加上实现停靠效果的代码了)://1、原创 2011-11-03 23:20:11 · 1703 阅读 · 0 评论 -
MFC基于消息,使用事件驱动(Message Based,Event Driven)机制
MFC程序基于消息,而使用事件驱动(Message Based,Event Driven)。也就是说MFC就是一个死循环,里面有很多的条件,每个条件对应一个方法。这些条件就是有消息类定义,当用户触发事件时,将发送消息到响应的窗口。当程序收到消息时进行解析,判断如果符合条件,将运行当前事件的处理方法。MSG msg;while(GetMessage(&msg,NULL,NULL,NULL))原创 2011-11-03 23:25:04 · 5502 阅读 · 0 评论 -
VC++笔记(未整理版本)
匈牙利表示法关于构造函数显式调用基类的有参数的构造函数:类继承当中的三种属性:引用和指针重复命名错误及解决。。。 Windows程序运行原理PPT窗口的创建步骤1. 设计一个窗口类;typedef struct _WNDCLAS原创 2011-09-07 19:11:26 · 5803 阅读 · 3 评论