Duilib应用修改程序图标方法
2015-08-09 21:29
549 查看
本文向大家介绍如何修改duilib应用图标,对于win32或者mfc应用来说,我们可以在注册窗口类时指定WNDCLASS结构体的HIcon属性。那么duilib应用该怎样处理呢?大家都知道Windows是基于消息驱动的操作系统,对于duilib应用,我们可以向窗口发送STM_SETICON消息来完成,这种方法也适用于win32/mfc应用。
接下来我们看一下在Visual Studio中的操作步骤:
1.打开资源视图,在工程上点击右键=>添加=>资源,打开添加资源对话框,选择Icon,点击调入按钮,选择需要导入的Icon图标。
例如笔者导入了一个QQ的企鹅图标,导入后如下所示:
2.修改资源的ID,例如笔者修改为IDI_QQ。
3.调用Win32 API函数LoadIcon,加载图标,该函数返回一个图标句柄。
4.调用SendMessage函数向窗口发送STM_SETICON消息。我们可以將这段代码放在duilib窗口创建之后,完整代码如下:
接下来我们看一下在Visual Studio中的操作步骤:
1.打开资源视图,在工程上点击右键=>添加=>资源,打开添加资源对话框,选择Icon,点击调入按钮,选择需要导入的Icon图标。
例如笔者导入了一个QQ的企鹅图标,导入后如下所示:
2.修改资源的ID,例如笔者修改为IDI_QQ。
3.调用Win32 API函数LoadIcon,加载图标,该函数返回一个图标句柄。
HICON hIcon = ::LoadIcon(hInst,MAKEINTRESOURCE(IDI_QQ));
4.调用SendMessage函数向窗口发送STM_SETICON消息。我们可以將这段代码放在duilib窗口创建之后,完整代码如下:
#include<Windows.h> #include "QQWnd.h" #include "resource.h" INT WinMain(HINSTANCE hInst,HINSTANCE hPreInst,LPSTR lpCmdLine,INT Show) { CPaintManagerUI::SetInstance(hInst); CPaintManagerUI::SetResourcePath(CPaintManagerUI::GetResourcePath()); //创建主窗口 QQWnd* wnd = new QQWnd(); wnd->Create(NULL,L"qq",UI_WNDSTYLE_FRAME^WS_THICKFRAME ,WS_EX_WINDOWEDGE); HICON hIcon = ::LoadIcon(hInst,MAKEINTRESOURCE(IDI_QQ)); ::SendMessage(wnd->GetHWND(),STM_SETICON,IMAGE_ICON,(LPARAM)(UINT)hIcon); wnd->CenterWindow(); wnd->ShowWindow(true); CPaintManagerUI::MessageLoop(); delete wnd; return 0; }5.编译程序可以看到生成的应用图标已经变成小企鹅。
相关文章推荐
- Duilib应用修改程序图标方法
- 树状数组 hdu2227 Find the nondecreasing subsequences
- hdoj 1711 Number Sequence
- (win7 UEFI安装)顺便说说UEFI、GPT和Secure Boot
- EasyUI----动态拼接EasyUI控件
- UIScrollView实现的简单视图切换
- Leetcode N-Queens系列
- 线段树 csu1555 Inversion Sequence
- MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(562,5): error MSB6006: “mt.exe”已退出,代码为 5
- Android系统UI设计之:视图
- UVA 348 Optimal Array Multiplication Sequence(最优矩阵链乘)
- Codeforces Round #303 Equidistant String
- iOS开发-- 如何让 UITableView 的 headerView跟随 cell一起滚动
- iOS开发-- 设置UIButton的文字显示位置、字体的大小、字体的颜色
- iOS开发概述 - 17.UIView动画和核心动画对比
- iOS开发--UIButton 设置圆角 边框颜色 点击回调方法
- UIAlertView使用
- UITableView 及其传值
- easy ui 问题
- CSS 3 UI元素状态伪类选择器