123456

 

2010年8月11日

clistbox 和button的自绘

摘要: 1.自绘了CListBox:简记如下:在DrawItem中自绘,必须设定属性:LBS_OWNERDRAWFIXED |LBS_HASSTRINGS;如果不设定LBS_HASSTRINGS,那么GetText取得的将是乱码:三个难点,一是自绘属性加上LBS_OWNERDRAWFIXED后,必须同时重载DrawItem和MeasureItem,我第一次只重载了DrawItem,发现出现堆栈错误。二是自绘属性中必须有LBS_HASSTRINGS,不然GetText取得的将是乱码.三是自绘中 dc.Attach(lpDIS->hDC);必须有对应的dc.Detach();,我第一次没有加dc.D 阅读全文

posted @ 2010-08-11 19:00 hgy413 阅读(288) 评论(0) 推荐(0) 编辑

怎么在安装目录下创建一个文件

摘要: 如题:怎么在安装目录下创建新的文件夹和文件:比如,我想实现在自己的工程上生成一个文件来保存某些信息,这个文件目录如果没有,我要创建,如果有,我就获取它的路径,以备读取用到函数主要有GetModuleFileName/SHGetSpecialFolderPath/CreateDirectory/::PathFileExists其中GetModuleFileName用来获得打开的文件所在的目录,SHGetSpecialFolderPath可以创建到系统目录下,如D://我的文档//...CreateDirectory如果文件夹存在,则创建失败,否则创建成功,::PathFileExists用来判断 阅读全文

posted @ 2010-08-11 18:47 hgy413 阅读(430) 评论(0) 推荐(0) 编辑

MFC自绘属性的总结

摘要: 由于工作需要,自绘了大部分MFC控件,现作个总结如下CTreeCtrl是在OnNMCustomdraw中自绘的,不要设定其他属性CListCtrl是在DrawItem中自绘的,要设定属性LVS_OWNERDRAWFIXED|LVS_REPORTCButton是在DrawItem中自绘的,要设定属性BS_OWNERDRAWCMenu是在DrawItem中自绘的,要把每一项都设定属性MF_OWNERDRAW,用到递归方法单选按钮是基于CButton在DrawItem中自绘的,要重写Create设定属性为dwStyle &= ~(0xF);dwStyle |= BS_AUTORADIOBUT 阅读全文

posted @ 2010-08-11 18:36 hgy413 阅读(278) 评论(0) 推荐(0) 编辑

导航