如何在wince的任务栏上显示窗口图标

博主研究wince下程序设计,发现自己写的wince程序在任务栏和任务切换列表中只显示标题,不显示图标。经搜索,找到WM_SETICON消息,该消息支持所有wince系统。在主窗口回调函数中响应WM_CREATE消息,加入特定语句后,任务栏标题左边可显示自定义小图标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    研究wince下的程序设计还不久,大体上感觉和windows下编写程序差不多,但wince只是windows的一个子集,很多在windows下支持的api,在wince下不支持。
    这天,发现自己写的wince程序,无论在任务栏,还是在任务切换列表中,都只显示标题而不显示标题左边的那个应用程序定义的小图标,而微软自己写的程序,还有一些厂商写的程序,运行的时候,在任务栏上是同时显示图标和标题文字的,这就奇怪了,又自己编写了几个程序,发现无论是wince sdk,还是mfc的程序都不显示这个图标。
    在网上狂搜了一通,不知道这个问题是不是太简单,大侠们都不屑于发表指导意见。
    又在msdn上一个一个地浏览以WM开头的消息,终于给我找到一个消息:WM_SETICON,从名字上看,是设置图标的。
    WM_SETICON
    wParam = (WPARAM) fType;          // icon type
    lParam = (LPARAM) (HICON) hicon;  // handle to icon
    两个参数一个是fType,用来指定设定的是大图标还是小图标,分别由宏ICON_BIG和ICON_SMALL指定;另一个是hicon,是图标的句柄,一般用LoadIcon()来载入。
    再看这个消息支持的平台,windows ce:requires version 1.0 or later。看来是支持所有wince系统的了。
    接下来的事情就好办了,在主窗口的回调函数中,响应WM_CREATE消息,加入一条语句:
    SendMessage(hWnd, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon(hInst, (LPCTSTR)IDI_MYSMALLICON));
    搞定。第三个参数ICON_SMALL,在任务栏上显示的是小图标。LoadIcon()载入图标资源,IDI_MYSMALLICON是你定义的小图标的ID,一般是16*16大小。
    运行程序,看看任务栏上,是不是在标题左边出现了你定义的小图标?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值