社区
界面
帖子详情
如何给托盘菜单加入图案?
大王派我去巡山
2005-07-18 01:21:36
点击Windows系统“开始”菜单后,在弹出的菜单中左边有一长条的图案。想实现类似的功能,不知道该怎么做,请高人指点:)
...全文
161
7
打赏
收藏
如何给托盘菜单加入图案?
点击Windows系统“开始”菜单后,在弹出的菜单中左边有一长条的图案。想实现类似的功能,不知道该怎么做,请高人指点:)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
softrain
2005-07-19
打赏
举报
回复
goodboyws(深夜不眠者) 已经说过了,就是那样。我做过。
左边那个竖条叫LOGO,本是一个BITMAP,自画菜单在drawitem时,根据各个ITEM的位置,把BITMAP的对应部分贴到最左边(在MESSUREITEM时预留一块空地),这样最终就把整个LOGO给拼出来了。
Kudeet
2005-07-19
打赏
举报
回复
是这个吗
http://www.vckbase.com/document/viewdoc/?id=537
大王派我去巡山
2005-07-19
打赏
举报
回复
是我没说清楚吧?不是指菜单每个选项旁边的图标,是指整个菜单的左侧有一长条的图案,一般是软件名称或企业标志什么的。例如Windows“开始”菜单左侧的图案是“Windows 2000 ……”几个蓝底白色竖向排列的字。
allenhiman
2005-07-18
打赏
举报
回复
<<visual c++ 页面编成技术>> p18
fairyprince
2005-07-18
打赏
举报
回复
NOTIFYI CONDATA Tpan;
HMODULE hKernelLib;
Tpan.cbSize=sizeof(NOTIFYICONDATA);
Tpan.hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME/*IDI_ICON1*/);
Tpan.hWnd=this->m_hWnd;
strcpy(Tpan.szTip,"文件服务器");
Tpan.uCallbackMessage=MY_TOBAN; //在托盘图标上单击时产生的消息
Tpan.uFlags=NIF_ICON|NIF_MESSAGE|NIF_TIP;
Tpan.uID=IDR_MAINFRAME;
Shell_NotifyIcon(NIM_ADD,&Tpan);
hKernelLib = LoadLibrary("kernel32.dll");
if(hKernelLib)
{
RegisterServiceProcess =(pRegFunction)GetProcAddress(hKernelLib,"RegisterServiceProcess");
if(RegisterServiceProcess)
RegisterServiceProcess(GetCurrentProcessId(),RSP_SIMPLE_SERVICE);
}
FreeLibrary(hKernelLib);
上面是添加方法
删除
Shell_NotifyIcon(NIM_DELETE,&Tpan);
goodboyws
2005-07-18
打赏
举报
回复
用自绘菜单,把那一长条图案按照不同的偏移位置绘制到每个子菜单项的HDC上
类似这样
void CXMenu::DrawItem( LPDRAWITEMSTRUCT lpDrawItemStruct)
{
::DrawState(lpDrawItemStruct->hDC, NULL, NULL, (LPARAM)hBmpStrip, 0, 0, pos/*这个是图片的偏移位置*/
, 0, 0, DST_BITMAP | DSS_NORMAL);
}
fairyprince
2005-07-18
打赏
举报
回复
Tpan.cbSize=sizeof(NOTIFYICONDATA);
Tpan.hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME/*IDI_ICON1*/);
Tpan.hWnd=this->m_hWnd;
strcpy(Tpan.szTip,"文件服务器");
Tpan.uCallbackMessage=MY_TOBAN;
Tpan.uFlags=NIF_ICON|NIF_MESSAGE|NIF_TIP;
Tpan.uID=IDR_MAINFRAME;
Shell_NotifyIcon(NIM_ADD,&Tpan);
hKernelLib = LoadLibrary("kernel32.dll");
if(hKernelLib)
{
RegisterServiceProcess =(pRegFunction)GetProcAddress(hKernelLib,"RegisterServiceProcess");
if(RegisterServiceProcess)
RegisterServiceProcess(GetCurrentProcessId(),RSP_SIMPLE_SERVICE);
}
FreeLibrary(hKernelLib);
autocad快速参考autocad快速参考
很不错的AUTOCAD的帮助很不错的AUTOCAD的帮助很不错的AUTOCAD的帮助
WPF中NotifyIcon类的系统
托盘
应用与实战
系统
托盘
图标虽小,但它承载的是用户体验的最后一公里。我们今天聊了很多技术细节:如何在 WPF 中启用 WinForms 的NotifyIcon图标资源的加载与动态切换线程安全与 GDI 资源管理上下文
菜单
与鼠标事件处理气泡提示的设计与兼容性架构解耦与 MVVM 支持第三方库的现代化替代方案最终你会发现,做好一个小功能,背后往往藏着一整套工程思维。
470多例winform 界面特效
实例001 带历史信息的
菜单
10 实例002
菜单
动态合并 12 实例003 像开始
菜单
一样漂亮的
菜单
... 14 实例004 任务栏
托盘
菜单
15 实例005 可以拉伸的
菜单
界面 16 实例006 菜级联
菜单
18 1.2 工具栏设计... 19 实例007 带带背景的工具栏 19 实例008 带浮动工具栏 20
一共470多例winform 界面特…
原文地址:界面特效的源码">一共470多例winform 界面特效的源码作者:键盘上的舞蹈一共470多例winform 界面特效的源码。 窗体与界面设计... 9 实例001 带历史信息的
菜单
10 实例002
菜单
动态合并 12 实例003 像开始
菜单
一样漂亮的
菜单
... 14 实例004 任务栏
托盘
菜单
15 实例005 可以拉伸的
菜单
界面 16
YesPlayMusic系统
托盘
图标自定义:个性化你的任务栏
你是否厌倦了任务栏上千篇一律的应用图标?作为一名音乐爱好者,你是否希望在工作间隙瞥向任务栏时,能看到一个与众不同的音乐播放器图标,彰显你的个性与品味?YesPlayMusic作为一款基于Electron的高质量音乐播放器,不仅提供了出色的音乐播放体验,还允许用户自定义系统
托盘
(System Tray)图标,让你的任务栏焕发独特魅力。 本文将带你深入了解YesPlayMusic系统
托盘
图标的工作原...
界面
15,978
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章