VC添加工具栏

方法一:添加ICON图标

1. 新建一个基于对话框的项目:Test

2. 在类CTestDlg中, 添加两个变量:

CToolBarCtrl m_ToolBar1;

CImageList m_ImageList;

3.添加图标(例5个.icon图标)

4. 在#include "TestDlg.h"中 添加 #define ID_TOOLBAR1 1000

5. 在OnInitDialog()初始化:

const int ARR_MAX = 5;

m_ImageList.Create(32, 32, ILC_COLOR32 | ILC_MASK, 0, 0);

m_ToolBar1.EnableAutomation();

m_ToolBar1.Create(WS_CHILD | WS_VISIBLE, CRect(0, 0, 0, 0), this, ID_TOOLBAR1);

UINT Resource[ARR_MAX] = {IDI_ICON1, IDI_ICON2, IDI_ICON3, IDI_ICON4, IDI_ICON5};

int i;

TBBUTTON button[ARR_MAX];

for(i = 0; i < ARR_MAX; i++)

{

m_ImageList.Add(::LoadIcon(::AfxGetResourceHandle(), MAKEINTRESOURCE(Resource[i])));

}

m_ToolBar1.SetImageList(&m_ImageList);

for(i = 0; i < ARR_MAX; i++)

{

button[i].dwData = 0;

button[i].fsState = TBSTATE_ENABLED;

button[i].fsStyle = TBSTYLE_BUTTON;

button[i].iBitmap = i;

}

m_ToolBar1.AddButtons(ARR_MAX, button);

//TBBUTTON Wrap;//创建一个分隔条

//Wrap.dwData = 0;

//Wrap.fsState = TBSTATE_ENABLED;

//Wrap.fsStyle = TBSTYLE_SEP;

//m_ToolBar1.InsertButton(3, &Wrap);

//m_ToolBar1.AutoSize();

m_ToolBar1.SetStyle(TBSTYLE_FLAT | CCS_TOP);

——————————————————————————————————————

方法二:自己绘制的

1. 添加资源(一个IDR_TOOLBAR1)

2. 在类CTestDlg中, 添加变量:

CToolBar m_ToolBar;

3. 初始化中添加:

if(!m_ToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP) || !m_ToolBar.LoadToolBar(IDR_TOOLBAR1))

{

TRACE0("Failed to create toolbar!");

return -1;

}

RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);

m_ToolBar.ShowWindow(SW_SHOW);

VC++添加工具栏的更多相关文章

  1. Java基础之处理事件——添加工具栏(Sketcher 7 with File toolbar buttons)

    控制台程序. 工具栏在应用程序窗口中通常位于内容面板顶部的菜单栏下,包含直接访问菜单选项的按钮.在Sketcher程序中可以为最常用的菜单项添加工具栏. 工具栏是javax.swing.JToolBa ...

  2. VSTO Word2003 添加菜单栏, 添加工具栏

    直接上代码了:   Microsoft.Office.Core.CommandBar menuBar; CommandBarButton ccbtn = null;        CommandBar ...

  3. 1.1.7-学习Opencv与MFC混合编程之---为画图工具添加工具栏

    源代码:http://download.csdn.net/detail/nuptboyzhb/3961701 哎,其实里面有很多图片的,本来看起开很明了的,资源连接里有详细的文档,比下面的看的舒服的多 ...

  4. 如何在BCGControlBar界面库的CBCGPFormView子视图里面添加工具栏

    最近有一个项目需求,需要在子视图里面添加一个新工具栏用来处理当前视图对应模块的操作.之前在对话框模式下做过添加工具栏的实现,在CBCGPFormView中添加工具栏还是头一次.在这里记录一下,给自己留 ...

  5. VC添加全局热键的方法

    VC添加全局热键的方法 这个方法靠谱 http://blog.csdn.net/lujianfeiccie2009/article/details/7498704 VC添加全局热键的方法 标签: bu ...

  6. Qt 给QWidget添加工具栏

    在Qt中,给主窗口(QMainWindow类)添加工具栏非常方便,直接使用addToolBar 即可,如下所示: fileToolBar = addToolBar(tr("&File ...

  7. (转载)VC/MFC 工具栏上动态添加组合框等控件的方法

    引言 工具条作为大多数标准的Windows应用程序的 一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开 ...

  8. VC/MFC 工具栏上动态添加组合框等控件的方法

    引言 工具条作为大多数标准的Windows应用程序的一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开发 ...

  9. VC MFC工具栏(CToolBar)控件

    一.工具栏 工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创 ...

随机推荐

  1. [原创]VS2013 EF6连接MySql需要几步?

    精简的美丽...... 1.安装mysql server下载地址 http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.21-winx64.zip注意: ...

  2. 聊聊Iconfont

    一.前言 说起Iconfont,对大多数人来说可能不是什么新的技术了,现在好多大网站已经开始使用Iconfont.博主今天主要是简单说一下它的使用方法,聊聊使用它时可能遇到哪些坑,不熟悉的同学可以简要 ...

  3. 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别

    关于inflate参数问题,我想很多人多多少少都了解一点,网上也有很多关于这方面介绍的文章,但是枯燥的理论或者翻译让很多小伙伴看完之后还是一脸懵逼,so,我今天想通过三个案例来让小伙伴彻底的搞清楚这个 ...

  4. 转--xcode duplicate symbol问题

    遇到引用库重复定义的问题,需要解决.   项目需要,同时引用ZBar和QQ授权登录SDK,由于二者均使用了Base64处理数据,XCode编译时报错: duplicate symbol _base64 ...

  5. 使用Jsoup帮助解析具有html标签的数据和解析网页

    下载Jsoup包后导入 /** * Created by YGW on 2016/4/17. * 显示公告的详细内容 */public class PressFragment extends Frag ...

  6. 解析搜狗词库(python)

    #!/usr/bin/python # -*- coding: utf-8 -*- import struct import sys import binascii import pdb #搜狗的sc ...

  7. [未完成]关于枚举(Enum)

    今天总结一下枚举相关的知识.先附一段关于枚举的代码: package org.talend.core.model.param; import org.talend.core.i18n.Messages ...

  8. scala学习笔记:各种奇怪的写法

    Unit函数的定义: def foo()={println("hi")} 等号可以省略: def foo(){println("hi")} update方法: ...

  9. elfinder-2.x的java servlet后端——elfinder-2.x-servlet

    去年在美期间在外导的项目中,需要用到el-finder的完美界面,但苦于没有java后端,因此做了一个elfinder-2.x-servlet. 托管地址:https://github.com/blu ...

  10. SQL IF UPDATE(Number) 在触发器[Trigger]中的用法

    IF UPDATE(Number)在触发器(TRIGGER)中用处很大 CREATE TRIGGER TrgTest ON [TableName] FOR UPDATE IF UPDATE(Colum ...