SetIcon是一个很不靠谱的函数,默认它会将任何图标变成标准的所谓big模式(32X32)然后设置给控件,而小图标模式无法设置。
解决办法可以尝试三个:
图标设置为32X32大小,周围用灰色,中间16方阵用现有图标。不过这个不是很靠谱,如果状态条大小不合适,可能比较难看。
不使用SetIcon函数,通过消息更改图标。这个我没有在状态条上试过(一般都是对按钮),应该方法一样,你可以尝试一下:::SendMessage(m_hWnd, WM_SETICON, bSmallIcon, (LPARAM)hIcon)//small的大小是16X16
如果以上尝试都不成功和满意,建议你搜一下OnUpdateMyStatus,通过DC绘图方式实现图标吧,这个是最靠谱的方式了。
可以试试这个函数ModifyStyleEx 修改控件的扩展风格在对话框的初始化里 ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)