图6-13 Message请求TLP头格式PCIe总线规定了以下几类消息报文。本节将重点讲述INTx中断和错误信息相关的消息报文,请读者阅读PCIe总线规范了解其他消息报文。在PCIe总线中,PCIe设备可以使用Legacy中断方式提交中断请求,此时需要使用INTx中断消息报文向RC通知中断事件。设备收到该消息报文后,将结束收到的INTx中断消息报文,然后产生一个新的INTx中断消息报文。......
2023-10-20
WM_DRAWITEM消息,一般用于在父窗口中建立消息映射函数。如果父窗口中有一个或多个具有自绘属性的控件,WM_PAINT消息映射函数执行后就立即执行WM_DRAWITEM的消息映射函数OnDrawItem,对所有具有自绘属性的子窗口进行更新。执行基类函数CWnd::OnDrawItem将回调路由,进入每个自绘子窗口关联的派生类的虚函数DrawItem中。
WM_MEASUREITEM消息,同样一般在父窗口中建立消息映射函数。在一些具有自绘属性的列表类控件添加列表项时,产生WM_MEASUREITEM消息回调。在消息回调函数OnMeasureItem中,执行基类函数CWnd::OnMeasureItem将回调路由,进入每个自绘子窗口关联的派生类的虚函数MeasureItem中。
使用MFC应用程序向导创建一个工程名为“dr”的对话框程序,用于演示WM_DRAWITEM和WM_MEASUREITEM消息的使用方法。
1)在主对话框中添加一些控件,如图10-44所示。
图10-44 编辑主对话框资源
2)修改控件(自绘)属性,见表10-2。
表10-2 主对话框的控件属性
3)将上一个工程的图标复制到res子目录中,并导入到工程里,如图10-45所示。
图10-45 导入后的图标资源ID
4)在主对话框类的头文件中,添加一些成员变量和函数。
5)在主对话框类的源文件(drDlg.cpp)中编写按钮自绘函数的代码。
6)在主对话框类的源文件中,编写自绘组合控件的代码。
(www.chuimin.cn)
7)在主对话框类的源文件中,编写添加下拉列表项的代码。
8)修改对话框初始化函数OnInitDialog的代码。
9)在主对话框中,添加WM_DRAWITEM和WM_MEASUREITEM消息映射函数,如图10-46所示。
图10-46 添加消息映射函数
10)修改WM_MEASUREITEM消息映射函数代码。
11)修改WM_DRAWITEM消息映射函数代码。
12)最后添加WM_DESTROY消息映射函数OnDestroy,并修改代码。
13)编译并运行,测试代码,如图10-47所示。
WM_MEASUREITEM和WM_DRAWITEM消息,能够在父窗口中提前截获所有子窗口的自绘和测量消息回调。如果使用这两种消息,还能够省略子窗口派生类,在父窗口中统一编写所有子窗口的自绘代码。这样处理的优点是方便快捷,省略了一些复杂的过程;缺点是不如派生类代码的独立性强,不利于深入推进项目开发。
图10-47 查看运行结果
有关VC++就业培训宝典之MFC视频教程的文章
图6-13 Message请求TLP头格式PCIe总线规定了以下几类消息报文。本节将重点讲述INTx中断和错误信息相关的消息报文,请读者阅读PCIe总线规范了解其他消息报文。在PCIe总线中,PCIe设备可以使用Legacy中断方式提交中断请求,此时需要使用INTx中断消息报文向RC通知中断事件。设备收到该消息报文后,将结束收到的INTx中断消息报文,然后产生一个新的INTx中断消息报文。......
2023-10-20
因而信号是由消息转换来的可以被传输和处理的具体形式,是消息的运载工具。由消息转换成的信号惟一地对应着消息的变化。由于消息有模拟消息和数字消息,所以信号同样有模拟信号和数字信号。信息就是消息或信号随机变化中的 “不确定性”,是消息中所含的待知的本质内容。各种随机变化的消息都会有一定量的信息,如社会科学中的经济信息、生活信息、科研信息、气象信息等。......
2023-06-27
接近开关的状态又由装在刨台下部的四个接近块接近的情况所决定,如图10-9a所示。各接近开关在不同时序中的状态如图10-9b所示。图中,接近开关被撞后的状态为“1”;复位后的状态为“0”。......
2023-06-24
移位和循环指令需要选择数据类型。3)如果要循环移位的位数超过目标值中的位数,仍将执行循环移位。编写程序如图5-32所示,其中I0.0为控制开关,M1.5为周期为1s的时钟存储器位,实现的功能为当按下I0.0,QD4中为1的输出位每秒钟向左移动1位。第1段程序的功能是赋初值,即将QD4中的Q7.0置位,第2段程序的功能是每秒钟QD4循环左移一位。......
2023-06-15
1)SendMessage和PostMessage函数都是消息传递函数,通过MSDN查看两个函数的格式。2个函数的4个参数的意义是一样的,只有返回值类型不同,LRESULT表示消息被处理后的返回值,BOOL表示消息是否传递成功。3)新建一个Win32工程,编写一段简单的代码测试消息传递函数。在MFC程序中,必须使用ON_MESSAGE来关联消息映射函数。PostMessage是非阻塞的,不等OnPostMessage执行完就继续向下执行,而且返回值是1,代表消息已经传送到。......
2023-11-25
数/模(D/A)转换器D/A转换器是指将数字量转换成模拟量的电路,其主要作用是将计算机需要输出的数字量转换成电压,以便再转换成适合外围设备的模拟物理量。图5-16FX3U-3A-ADP模块模/数(A/D)转换接口模/数A/D转换器是将外围设备转换的模拟电压,转换成数字量的器件,它的实现方法有多种,常用的有逐次逼近法、双积分法。......
2023-06-23
BIOS 是主板上的重要部件,具体作用有以下几点:1.处理器BIOS 中断服务BIOS 中断服务程序实质上就是计算机系统中硬件与软件之间的一个可编程接口,主要用于程序软件功能与微机硬件之间转接。......
2023-11-18
图2-22 淬火工艺规范图2.淬火工艺分类根据冷却形式的不同,淬火工艺主要分为:单介质淬火、双介质淬火、分级淬火和等温淬火等,见图2-23。图2-23 钢热处理淬火工艺规范及类型a)单介质淬火 b)双介质淬火 c)预冷淬火 d)分级淬火+冷处理 e)Ms点以上分级淬火 f)贝氏体等温淬火 g)Ms点以下分级淬火 h)预淬贝氏体等温淬火从第一种介质转移到第二种介质时的淬火工件温度,与工件的有效尺寸有很大关系。......
2023-06-24
相关推荐