先介绍几个我自己做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:高亮
分享到:
相关推荐
虽然VB本身并不直接支持创建ICO图标,但我们可以借助外部工具,如画图软件或专门的图标编辑器,制作多尺寸、多色彩的PNG或BMP图像,然后将其转换为ICO格式。转换工具有很多,如IcoFX等,它们允许你精确控制每个图标...
你可以将ico图标加载到这些控件中,用于按钮、菜单项或其他界面元素。 5. **处理图标库**:如果你有大量的ico图标,可能需要编写代码来管理和选择合适的图标。这可能涉及到遍历资源,根据需要动态加载图标。 6. **...
这些图标通常以.ico格式存在,因为.ico是Windows操作系统下支持的、可以包含多种尺寸和颜色深度的图像格式,特别适用于制作应用程序的菜单图标、工具栏按钮以及窗口图标。 VB(Visual Basic)是微软公司推出的一种...
- 对于像按钮、菜单项等控件,可以通过设置其`Image`或`ImageList`属性来显示图标。 - 例如,`Button1.Image = My.Resources.ButtonIcon`将按钮的图像设置为资源中的`ButtonIcon`图标。 5. **自定义图标**: - ...
PictureBox1.Image = Image.FromFile("icon_path.ico") ' 将"icon_path.ico"替换为你的图标文件路径 ' 设置PictureBox的位置和大小 PictureBox1.Left = menuItem.Bounds.Left PictureBox1.Top = menuItem....
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 在图片中...