PerlObjective-C文本Visual Studio 6Visual C++ 7.0Windows 2000Visual C++ 6.0Windows XPMFC中级开发Visual StudioWindowsC++
位图工具栏






2.50/5 (12投票s)
2002 年 4 月 26 日
1分钟阅读

260536

4738
这是我尝试创建一个简单的工具栏类,允许在工具栏的背景中设置位图。
引言
这是我尝试创建一个简单的工具栏
类,允许在工具栏
的背景中设置位图。它不如BCGControl
库强大,但这只是一个开始…
还可以进行一些改进;例如,没有使用高亮图像。单击按钮时,过程也会有些闪烁。该类还应修改为仅加载一次背景,以仅更新按钮的矩形区域。
使用方法
- 像往常一样创建
工具栏
if (!myToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC, DB_BITMAP_TAHITI, IDB_BITMAP_TOOLBAR, 9, false) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME)) { TRACE0("Failed to create toolbar\n"); return -1; // fail to create }
DB_BITMAP_TAHITI
= 背景位图的 ID
IDB_BITMAP_TOOLBAR
= 工具栏位图的 ID
9
是位图中的按钮数量
false
是一个布尔值,定义如果位图的大小与工具栏不同,背景位图是否应该拉伸。请注意,
TBSTYLE_FLAT
将创建扁平格式的按钮...否则,将添加标准的 3D 按钮。 - 设置过程的样式,
IM_STRECH
或IM_TRANSPARENT
。IM_TRANSPARENT
将采用工具栏
图像,并删除背景颜色。IM_STRECH
将位图拉伸到按钮的大小。m_wndToolBar.ImageStyle = IM_TRANSPARENT; m_wndToolBar.MaskColor = RGB(198, 195, 198);
- 定义是否应将位图应用于完整的控件框架,或者仅应用于
工具栏
。m_wndToolBar.all_frame = true
;
- 可以使用
DrawEdge
函数的选项修改按钮的类型。
许可证
本文未附加明确的许可证,但可能在文章文本或下载文件本身中包含使用条款。如有疑问,请通过下面的讨论区联系作者。
作者可能使用的许可证列表可以在此处找到。