先介绍几个我自己做UI时经常用到的图片编辑工具:
1、图片转换器:图片转换器(是一个非常实用的图片转换工具,它可以批量转换图片的格式,支持:BMP、WBMP、JPEG、PNG、TIF、GIF、PCX、TGA、ICO、PSD、JP2、J2K、DCX、PDF等各种图片格式)
2、ArtIcons:ArtIcons5.25(ArtIcons是一款Windows高级图标工具。专业或初级的图型设计师都可以使用它创建、编辑图标图像,并管理图标文件和文件库。
支持把各种图形格式的图像(ICO, ICPR, BMP, JPEG and PNG)直接粘贴为图标,把图标文件输出为ICO, ICPR, BMP, JPEG and PNG文件)
3、ico合成bmp格式的imagelist图片条:TBCreator (用多张*.ICO,*.BMP,*.JPG,*.GIF,*.PNG,*.TIF或者其他图片制作工具图片条。支持16X16,
24X24,32X32,48X48大小的图像输入,特别地,可以自定义将要生成图标的尺寸。支持透明色:图片背景色可设置为透明,用户可选择何种颜色作为透明色,此功能对带界面皮肤的软件来说,很有用处,无论皮肤界面的颜色如何变化,都能融入新的界面中;可将多个不同背景色的图片合成一个大图,并重新设置背景色)
现在要做一排图标按钮,三态形式有不同反应,要用到Codejock,关于Codejock的使用
做出的效果是这样的:
步骤:1、在XXXDlg.h中 添加按钮的变量和图片的类:
CXTPButton m_buttonPlay;
CXTPButton m_buttonStop;
CXTPButton m_buttonPlayPause;
CXTPButton m_fullScreenBtn;
CBitmap m_bitmap;
CBitmap m_bitmap_high;
CImageList m_imageList;
CImageList m_imageList_high;
2、
BOOL CPlayBackFuncPannelDlg::OnInitDialog()
{
CDialog::OnInitDialog();
//normal
m_bitmap.LoadBitmap(IDB_IMAGELIST);
m_imageList.Create(48, 48, ILC_COLORDDB|ILC_MASK, 20, 1);
m_imageList.Add(&m_bitmap, RGB(255, 0, 0));
//highlight
m_bitmap_high.LoadBitmap(IDB_IMAGELIST_HIGH);
m_imageList_high.Create(48, 48, ILC_COLORDDB|ILC_MASK, 20, 1);
m_imageList_high.Add(&m_bitmap_high, RGB(255, 0, 0));
HICON hIcon = m_imageList.ExtractIcon(12);
HICON hIconHot = m_imageList_high.ExtractIcon(12);
m_buttonPlay.SetIcon(CSize(48, 48), hIcon, hIconHot);
DestroyIcon(hIcon);
DestroyIcon(hIconHot);
hIcon = m_imageList.ExtractIcon(20);
hIconHot = m_imageList_high.ExtractIcon(20);
m_buttonStop.SetIcon(CSize(48, 48), hIcon, hIconHot);
DestroyIcon(hIcon);
DestroyIcon(hIconHot);
hIcon = m_imageList.ExtractIcon(9);
hIconHot = m_imageList_high.ExtractIcon(9);
m_fullScreenBtn.SetIcon(CSize(48, 48), hIcon, hIconHot);
DestroyIcon(hIcon);
DestroyIcon(hIconHot);
hIcon = m_imageList.ExtractIcon(13);
hIconHot = m_imageList_high.ExtractIcon(13);
m_buttonPlayPause.SetIcon(CSize(48, 48), hIcon, hIconHot);
DestroyIcon(hIcon);
DestroyIcon(hIconHot);
m_buttonPlay.SetFlatStyle(TRUE);
m_buttonStop.SetFlatStyle(TRUE);
m_fullScreenBtn.SetFlatStyle(TRUE);
m_buttonPlayPause.SetFlatStyle(TRUE);
return TRUE;
}
说明:normal :普通时的图片 highlight:高亮
分享到:
相关推荐
152 3.8 ServiceController组件 154 实例107 使用ServiceController组件控制计算机的服务 154 3.9 ImageList组件 156 实例108 使用ImageList组件制作动画图片 156 3.10 DirectoryEntry组件...
0006 安装不同类型的第三方组件 5 0007 在Delphi中加载QReport报表组件 7 1.3 创建DLL文件 8 0008 生成一个DLL文件 8 0009 调用DLL文件 8 1.4 窗体相关操作 9 0010 将组件置前/置后 9 0011 如何锁定...
0006 安装不同类型的第三方组件 5 0007 在Delphi中加载QReport报表组件 7 1.3 创建DLL文件 8 0008 生成一个DLL文件 8 0009 调用DLL文件 8 1.4 窗体相关操作 9 0010 将组件置前/置后 9 0011 如何锁定...
实例116 使用ImageList组件制作动画图片 171 3.10 DirectoryEntry组件 172 实例117 使用DirectoryEntry组件建立虚拟目录 172 第4章 图形技术 174 4.1 绘制图形 175 实例118 绘制公章 175 实例119 在图片中...
实例116 使用ImageList组件制作动画图片 171 3.10 DirectoryEntry组件 172 实例117 使用DirectoryEntry组件建立虚拟目录 172 第4章 图形技术 174 4.1 绘制图形 175 实例118 绘制公章 175 实例119 在图片中...
实例116 使用ImageList组件制作动画图片 171 3.10 DirectoryEntry组件 172 实例117 使用DirectoryEntry组件建立虚拟目录 172 第4章 图形技术 174 4.1 绘制图形 175 实例118 绘制公章 175 实例119 在图片中...
实例116 使用ImageList组件制作动画图片 171 3.10 DirectoryEntry组件 172 实例117 使用DirectoryEntry组件建立虚拟目录 172 第4章 图形技术 174 4.1 绘制图形 175 实例118 绘制公章 175 实例119 在图片中...