按钮自绘时判断参数大概是这样,仅供参考:
if (lpDrawItemStruct->itemAction & ODA_DRAWENTIRE) {
if (lpDrawItemStruct->itemState & ODS_SELECTED) {
// 按下
} else if (lpDrawItemStruct->itemState & ODS_DISABLED) {
// 禁用
} esle {
// 常规
}
}
if (lpDrawItemStruct->itemAction & ODA_FOCUS) {
if (lpDrawItemStruct->itemState & ODS_FOCUS) {
// 获得焦点
}
}
而鼠标经过和离开在这里是没办法获知的,可能是因为按钮自绘这个功能出现时还没有 XP 主题,当时 Windows 2000 的经典主题下并没有鼠标经过效果,这个需要自己判断。
if (lpDrawItemStruct->itemAction & ODA_DRAWENTIRE) {
if (lpDrawItemStruct->itemState & ODS_SELECTED) {
// 按下
} else if (lpDrawItemStruct->itemState & ODS_DISABLED) {
// 禁用
} esle {
// 常规
}
}
if (lpDrawItemStruct->itemAction & ODA_FOCUS) {
if (lpDrawItemStruct->itemState & ODS_FOCUS) {
// 获得焦点
}
}
而鼠标经过和离开在这里是没办法获知的,可能是因为按钮自绘这个功能出现时还没有 XP 主题,当时 Windows 2000 的经典主题下并没有鼠标经过效果,这个需要自己判断。
解决方案 »
- 关于COleDateTime中的时间比较问题
- 基于四通道视频监控系统
- Vista中IE7有什么特殊性,与IE6等有什么区别?
- smtp与pop3的收发特定邮件问题.
- 如何编译DDK自带的程序,如“usbview”等
- unhandled exception 0xc0000005 access violation
- int a=20;PVOID p=*(PVOID*)&a;p等于多少?
- 谁有Visual C++编程高手的源代码,进来看看,在线等待。高分相送
- 求助
- 我买了技术内幕第四版,也许这是整个江西的最后一本~~~~~~~~~但是没有光盘,谁知道哪里有光盘内容下载吗????帮帮我吧?我可以给你20分!!
- Vc中Static控件如何竖着显示字符?
- WSAEventSelect模型问题,为什么判断了一次后就无法判断了,一直超时
还有就是我看很多人都直接用if (lpDrawItemStruct->itemState & ODS_FOCUS),没有用外面那层lpDrawItemStruct->itemAction & ODA_FOCUS