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函数的选项修改按钮的类型。
许可证
本文未附加明确的许可证,但可能在文章文本或下载文件本身中包含使用条款。如有疑问,请通过下面的讨论区联系作者。
作者可能使用的许可证列表可以在此处找到。
