Visual C++ 2005图像编程之工具栏

在这个图像处理工具软件中,需要实现的工具栏比较多。我想让每个工具栏都在浮动的时候没有关闭按钮,同时在工具箱Toolbar中还可以设置工具栏显示的列数。根据类抽象的原则,我们给所有的工具栏建立一个基类CBaseToolBar,从CToolBar派生。CBaseToolBar需实现的主要功能有:浮动时去掉关闭按钮和设置工具栏的列数。

  从Visual Studio.Net开始,包括Visual C++ 2005,去掉了Visual C++ 6.0中类向导功能。一些概念上也发生了变化。可以包含多个工程的Workspace被Solution替代,称为一个解决方案。

  在Visual C++ 2005添加一个新的类,只需要在解决方案资源管理器中选择相应的工程,右键点击的弹出菜单中选择添加类,就会弹出添加类的向导对话框。如下图:

  在出现的类向导对话框中,选择添加MFC类,然后点击添加按钮,最后选择CToolBar做为基类,派生类名输入CBaseToolBar。Visual C++ 2005中的向导功能比Visual C++ 6.0更完善,选择功能更丰富了。如果是想在6.0版本中添加CToolBar的派生类是无法直接选择CToolBar类的,一般采用的方法是先选择CToolBarCtrl,添加完成后再采用手动修改的方法改为CToolBar,而现在可以直接选择CToolBar,省去了很多麻烦。

  建立好CToolBar的派生类,我们看看如何实现设置工具栏列数和去掉关闭按钮。设置列数时我们给类添加一个函数:void SetColumns(int nColumn);给某个特定的类添加函数需要先从解决方案资源管理器切换到类视图,这里会显示所有的类。在对应的类名上的右键弹出菜单中选择添加函数或者变量:如下图:

  在随后出现添加函数对话框,提供了非常丰富的功能,直接鼠标点击就可以为函数加上virtual、static、inline等关键字。

时间: 2024-12-04 17:17:32

Visual C++ 2005图像编程之工具栏的相关文章

Visual C++ 2005图像编程之属性设置栏

工具箱含有选择.填充.画线等功能.使用这些工具时有的需要设置填充风格和线条的大小.为了方便用户操作,实现更简易的UI,实现了属性工具栏.属性栏需要添加的主要功能有2个显示文字的静态文本框和2个组合框. 添加属性栏控件,需要先通过资源编辑器在相应的位置上建立四个对应的工具栏按钮,对于没有接触过Visual C++ 2005的朋友可能会找不到按钮的属性编辑器.在Visual C++ 6.0中是回车(右键)弹出对话框设置的.默认情况下,在工具栏右边可以打开属性设置对话框.注意下图中红色数字的位置就是我

Visual C++ 2005图像编程之预备知识

图像处理过程中,有很多需要我们掌握或者注意的方方面面.这里我先简单介绍一些比较基础的.重要的知识. 1.图像处理系统框架 一个基本的图像处理系统包含有4个子系统:图像输入系统.图像输出系统(显示).图像存储系统.图像处理与分析系统. 图 1-1 2.图像的构成 图像给我们的第一直观感觉就是一些五颜六色的点,在计算机语言中,这些点被称为像素.正是这些像素汇集在一起就构成了一副副美丽的图片.那么如何把这种直观的认识和我们的计算机程序结合起来呢?如何在计算机中表示这些五颜六色的点?理解了这2个问题对我

vs2005-Microsoft Visual Studio 2005 UNIERP编程错误

问题描述 Microsoft Visual Studio 2005 UNIERP编程错误 我刚下载完成 VS2005进行UNIERP编程.. 可是 design页面显示Source不显示图片. 请参考图片..

Visual Studio 2005 集成开发环境

Visual Studio 2005 集成开发环境   作者:ChinaBang时间:2005-04-10Blog: blog.csdn.net/shuaihj                 摘要:IDE增强     内容: Microsoft Visual Studio 2005 包含许多对开发环境新的增强.创新和提高,其目的在于使 Visual  .NET 开发人员比以往更加高效.本章探讨其中的一些功能,并且阐述开发人员如何使用它们以更快.更准确地编写代码. 提示除其他对 IDE 的"改进

Visual C# 2005快速入门之编写方法

visual|快速入门 在下面的练习中,将创建一个应用程序,它包含的一个方法能够计算一名顾问的收费金额--假定该顾问每天收取固定的费用,将根据工作了多少天来收费.首先要开发应用程序的逻辑,然后利用"生成方法存根向导"来写出这个逻辑使用的方法.接着,我们将在一个控制台应用程序中运行方法,以获得对该程序的最终印象.最后,我们将使用Visual Studio 2005调试器来检查方法调用. 开发应用程序逻辑 1. 在Visual Studio 2005中打开My Documents文件夹下的

在Visual Studio 2005和ASP.NET 2.0中使用强类型数据存取

asp.net|visual|数据 "Never put off until run time what can be done at compile time."David Gries, Compiler Construction for Digital Computers Introduction 作为程序员,我们在学习一些新技术的时候,范例有时候会是我们最大的敌人.指南通常被设计成简单易懂,但同时里面的懒惰.无效率的甚至是危险的代码编写会增多.像这种情况最普遍存在的就是在ADO.

Visual C#2005快速入门之switch语句

visual|快速入门|语句 某些时候,在嵌套使用if语句时,所有if语句看起来都非常相似,因为它们都在对一个完全相同的表达式进行求值,惟一的区别是每个if语句都将表达式的结果与一个不同的值进行比较.例如: if (day == 0) dayName = "Sunday";else if (day == 1) dayName = "Monday";else if (day == 2) dayName = "Tuesday";else if (da

体验Visual C++ 2005的现代语言特性(5)

可靠的安全 在2002年,Bill Gates宣布进行的可信赖计算,已对微软公司开发的所有产品带来了深刻的影响.Windows操作系统的开发者花了数月的时间来进行安全方面的训练及代码重审,带来的结果就是,Windows Server 2003成了该公司有史以来发布的最安全的操作系统.Microsoft Office 2003也包含了许多的安全功能,像IRM(Information Rights Management).加强的宏安全.Outlook中阻止下载HTML等等.而Visual C++ 2

体验Visual C++ 2005的现代语言特性(1)

当年Visual Studio.NET 2003 C++编译器的面世,令无数C++语言爱好者都对此垂涎不已:它与ISO C++标准保持98%的一致--这比以前任何一个版本都更加接近,和一体化的语言支持特性,如局部模板特定化:同时也包括了增强的缓冲区安全检查和改进的编译器诊断功能.以往使用C#和Visual Basic.NET的开发者,通过简单的拖放操作,就能生成稳健的Windows窗体应用程序,如今,C++的开发者也加入了进来,而且,这个编译器还对Intel Pentium 4和AMD Athl