计算机专业程序员实习日记

上传人:鲁** 文档编号:510448365 上传时间:2023-07-13 格式:DOC 页数:2 大小:13KB
返回 下载 相关 举报
计算机专业程序员实习日记_第1页
第1页 / 共2页
计算机专业程序员实习日记_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《计算机专业程序员实习日记》由会员分享,可在线阅读,更多相关《计算机专业程序员实习日记(2页珍藏版)》请在金锄头文库上搜索。

1、计算机专业程序员实习日记_05-14星期一listctrl中lvitemlpara有很广泛的用处,我们可以通过这个参数实现list控件的排序功能,这里需要注意的是使用lvitem中的lparam,但是setitemdata函数似乎又是对lvitem的lpara进行设置的,这里的关系似乎很微妙,但是我们一定要注意不能混淆。类中的成员函数可以单独的声明为模板函数,但是模板函数的实现要放在头文件中。gdi+中没有提供绘制圆角方的函数,我们需要通过graphicpath类进行模拟来实现。鼠标跟踪消息的要点:响应消息wm_mousemovewm_mouseleavewm_mousehover在wm_mo

2、usemove消息中处理_trackmouseevent()函数。_05-15星期二我们在使用tooltip的时候,有以下几个关键点:1,创建ctooltipctrl对象,create()函数实现。2,使用addtool()函数向这个tooltip中加入tools,这也是绑定tool到某个控件的过程,从中我们可以知道在这个ctooltipctrl对象中应该存在着不止一个tool,而是一系列的tool,通过函数deltool实现删除,addtool实现添加,updatetiptext实现更新tool的文本。3,最关键的是我们需要一个触发tooltip的关键点,这个关键点控制着何时显示这个tool

3、tip,一般情况下我们在pretranslatemessage()函数中进行处理,这也是我们拦截wm_mousemove的地方,拦截之后,我们调用tooltip的relayevent向tooltip对象传递这个消息用以表示tooltip可以被显示或者更新。静态链接mfcdll模块的时候,由于mfc总是使用它所练级额的dll模块状态,所以不存在模块管理的问题。调试dll的时候,我们需要exe文件的配合,所以先要生成exe测试文件,然后将dll工程设置成active,这时候会出现exe路径提示对话框,我们将测试用的exe路径填入就可以了。_05-16星期三ctooltipctrl函类中的relay

4、event()函数的存在理由,试想当我们的鼠标在一个窗体上滑动的时候,会发生什么情况,如果鼠标下方的窗体是一个子窗体,那么这个子窗体将会收到鼠标的消息,而主窗体的鼠标消息因此被屏蔽,windows是通过这种方式来处理消息的,这里ctooltipctrl对象也需要受到消息来进行处理,但是这些鼠标消息却不能流向ctooltipctr对象,这就是问题的关键之所在,如何将消息导向ctooltipctrl就成了关键,一般我们会在pretranslatemessage()函数中拦截消息之后使之导向ctooltipctrl,这个导向所用的函数就是relayevent函数。youcanhavemessages

5、relayedautomaticallyif:?thetoolisacontrolorisdefinedasarectangleinthetool“stoolinfostructure.?thewindowassociatedwiththetoolisinthesamethreadasthetooltipcontrol.ifthesetwoconditionsaremet,setthettf_subclassflagintheuflagsmemberofthetoolstoolinfostructurewhenyouaddthetooltothetooltipcontrolwithttm_addtool.thenecessarymousemessagesthenwillberelayedautomaticallytothetooltipcontrol.有关tooltip控件的讨论目前还存在疑惑,1当我们使用lpstr_textcallback的时候,为什么on_notify()可以得倒响应消息,却会在某个时间点出现stackrunover的错误。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号