VC++界面设计

合集下载

VC++程序设计语言

VC++程序设计语言

VC++程序设计语言VC++程序设计语言简介VC++(即Visual C++)是一种基于C++语言的集成开发环境,是微软公司推出的一款强大且流行的程序设计语言。

VC++具有很高的灵活性和扩展性,可以用于开发各种类型的应用程序,包括桌面应用程序、游戏、嵌入式系统等。

特性强大的图形界面开发工具VC++提供了一系列的图形界面开发工具,包括图形界面设计器、窗口资源管理器等,使得开发者可以快速设计和构建各种复杂的用户界面。

,VC++还支持丰富的用户界面控件库,可以轻松地创建按钮、菜单、对话框等常见的界面组件。

灵活的调试工具VC++集成了强大的调试工具,可以帮助开发者快速定位和解决程序的错误。

调试工具包括断点调试、变量监视、堆栈跟踪等功能,可以深入分析程序的运行状态,提供有效地调试环境。

支持多线程编程VC++提供了丰富的多线程编程支持,开发者可以轻松地创建和管理多个线程,并实现线程间的通信和同步。

多线程编程能够提高程序的并发性和响应速度,适用于处理复杂的并发任务。

丰富的库支持VC++提供了丰富的库支持,包括标准模板库(STL)、Windows API等。

这些库提供了各种常用的数据结构和算法,提高了开发效率,也提供了访问底层系统功能的接口。

开发流程创建项目在VC++中,需要创建一个新的项目。

可以选择创建桌面应用程序、控制台程序、动态库等不同类型的项目,根据具体需求进行选择。

编写代码创建项目后,可以开始编写代码。

VC++采用C++语言进行编程,开发者可以使用C++语言的各种特性来实现具体的功能。

,可以利用VC++提供的图形界面设计器来设计和创建用户界面。

调试程序在编写完代码后,可以使用VC++提供的调试工具对程序进行调试。

可以设置断点、查看变量的值、跟踪程序的执行流程,以发现并解决程序的错误和问题。

构建和运行程序调试完程序后,可以进行程序的构建和运行。

VC++提供了方便的构建工具,可以将源代码编译成可执行文件。

vc6.0可视化编程实例 -回复

vc6.0可视化编程实例 -回复

vc6.0可视化编程实例-回复vc6.0可视化编程实例是指在使用Microsoft Visual C++ 6.0编程工具进行可视化编程时的具体案例。

本篇文章将详细介绍vc6.0可视化编程实例的具体步骤和相关知识,以帮助读者更好地理解和应用可视化编程技术。

第一步:创建新项目首先,在vc6.0编程工具中点击“文件”菜单,选择“新建”->“项目”,然后在弹出的对话框中选择“Win32应用程序”作为项目类型。

接下来,填写项目名称、位置和解决方案等相关信息,点击“确定”按钮创建新项目。

第二步:设计界面在vc6.0中,可视化编程使用的是MFC(Microsoft Foundation Class)技术,通过使用控件和对话框设计工具来创建界面。

在解决方案资源视图中找到项目名称,展开后找到“资源文件”文件夹,并双击“资源文件.rc”文件,进入资源编辑器界面。

在资源编辑器中,用户可以通过拖放控件的方式设计界面。

例如,可以从“工具箱”控件面板中选择按钮控件,然后点击对话框中的位置放置按钮控件。

通过设置按钮的大小、位置、文字等属性来调整控件的外观。

在这个例子中,我们将在界面中放置一个按钮控件,用于实现一个简单的点击事件。

第三步:编写代码在界面设计完成后,我们需要为按钮添加点击事件的响应。

点击“类视图”选项卡,在其中找到对应的对话框类,通常以C开头,右键点击该类,选择“添加”->“函数”,并填写函数名称和返回类型等属性。

在弹出的函数编辑对话框中,输入要执行的代码。

例如,我们可以在按钮的点击事件函数中添加一段代码,用于弹出一个消息框显示一条消息。

在这个例子中,我们将添加一段代码,使点击按钮后弹出一个对话框,显示“Hello, world!”的消息。

第四步:编译和运行完成代码编写后,点击“生成”菜单,选择“生成解决方案”,或者直接按下F7键进行编译。

编译成功后,可以在输出窗口中查看编译结果。

接下来,点击“调试”菜单,选择“开始执行”或者按下F5键进行调试运行。

vc6.0界面和英文菜单含义

vc6.0界面和英文菜单含义

VC++6.0系统开发环境在Windows 98/2000/XP操作系统中正确安装了Visual C++ 6.0后,可以启动Visual C++6.0系统。

第一次运行时,将显示出“Tip of the Day”对话框,单击“Next”命令按钮,可看到有关各种操作的提示;如果不选中“Show tips at startup”复选框,那么以后运行Visual C++ 6.0时将不再出现此对话框。

单击“Close”命令按钮关闭此对话框,进入Visual C++6.0系统开发环境。

1 开发环境的菜单功能Visual C++6.0开发环境界面由标题栏、菜单栏、工具栏、项目工作区窗口、文档窗口、输出窗口以及状态栏等组成。

在开发环境界面中,可以看到在它的上方排列着一系列菜单,如图1所示,而每一个菜单下都有各自的菜单命令。

在进一步与开发环境打交道之前,先了解各个菜单命令的基本功能是很有必要的,因为大部分的操作都是通过菜单来完成的。

图 1 VC++主菜单栏1. File莱单File菜单中的命令主要用来对文件和项目进行操作,如“新建”、“打开”、“保存”、“打印”等。

其中各项命令的功能描述如表1所示。

表 1 File菜单命令的快捷键及功能描述菜单命令快捷键功能描述New Ctrl+N 创建一个新项目或文件Open Ctrl+O 打开已有的文件Close 关闭当前被打开的文件Open Workspace 打开一个已有的项目Save Workspace 保存当前项目Close Workspace 关闭当前项目Save Ctrl+S 保存当前文件Save As 将当前文件用新文件名保存Save All 保存所有打开的文件Page Setup 文件打印的页设置(续表)菜单命令快捷键功能描述Print Ctrl+P 打印当前文件内容或选定的当前内容Recent Files 选择打开最近的文件Recent Workspace 选择打开最近的项目Exit 退出Visual C++6.0开发环境2. Edit菜单Edit菜单中的命令用来使用户方便快捷地编辑文件内容,如进行删除、复制等操作,其中大多数命令功能与Windows中标准字处理程序的编辑命令一致,各项命令的快捷键及它们的功能描述如表2所示。

基于VC的税控机界面的设计与实现

基于VC的税控机界面的设计与实现
C lr 函数 。在 My utn类中继承 了 C utn类的 C et ) oo( ) Bt o Bt o ra ( e 函
数 , 对该函数的调 用实现对按钮 的动态创建 。该 函数 中的 通过
d t e参数 必须指定为 B _ nr rw属 性。 wSy l S Ow eD a 每次窗 口的改变和生成都会发 出 wM_ AI T消息 ,所 以 P N 可以在 Vi e w类中添加消息响应函数 O C et 在该 函数 中实 n ra 0, e 现对 My ut B t n类对象 的创 建和 生成 。 o
0 引言
在程序 设计中有一 经典的说 法是 : 对于一个 好的应 用程 “
序而 言 , 界面设计部 分的代码 应该占总程序 代码的 6 %t 可 0 ・ I 。”
由 Wi o s 用具体输 出设备的驱动程序 完成实际的输 出工 n w调 d 作 。围绕设备上下文 , C提供了一系列与其配合使用的绘 图 MF
摘 要:当今软件设计 与开发迅速发展 , 软件的界 面在商业软件 市场 中的作用越 来越 重要 。不 同的应用领域对软件界面有 着不同的需求。丈章在 v + 60 c + .环境下对税控机界面, 设计 了一种 实现个性化 B t n类控件 的动 态循 环创建的方法。 ut o
关键 词 :B t n类 ;DC;虚 函数 ;继 承性 ;界 面 uo
新 建的两个 B t n类为 GB t n和 My utn ut o ut o B t ,分别继承 o
于 C utn类和 GB t n类 , Bt o ut o 定义如下 :
ca s G BIt : u i ls J 0n D bI CBu t t c ton
1 utn类的设 计原 理 B t o

VC 的UI设计实例

VC  的UI设计实例
用 VC++实现 FLASH 的 UI 启动画面 摘要 介绍 ActiveX 控件在 VC++应用程序的使用方法并通过使用 Shockwave Flash Object 控件实现了 FLASH 的 UI 启动画面,开发了一套友好美观的应用程序界面。 关键词 VC++,Shockwave Flash Object 控件,Flash 一、应用概述 VC 是 Microsoft 的一个非常好用的 C++编程工具, 它的最大优势就是有一个对于程序员来说非常实用的 MFC(微软基础类库,Microsoft Foundation Class),掌握和运用好 MFC 将会给 C++编程带来非常高的开 发效率,因此,大多数的 C++程序员都喜欢用 VC,不但开发环境友好,而且有强大的 MFC 支持。然而, VC 的界面设计和时间处理方法非常复杂,很多初学者对于 Visual C++ UI 设计感到十分的麻烦,无法在有 限的时间内设计出美观、用户熟悉的操作界面。 UI 即 User Interface(用户界面)的简称。UI 设计则是指对软件的人机交互、操作逻辑、界面美观的整体设 计。好的 UI 设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由,充分体现软 件的定位和特点。软件界面设计就像工业产品中的工业造型设计一样,是产品的重要买点。一个友好美观 的界面会给人带来舒适的视觉享受,拉近人与电脑的距离,为商家创造卖点。界面设计不是单纯的美术绘 画,它需要定位使用者、使用环境、使用方式并且为最终用户而设计,是纯粹的科学性的艺术设计。 Macromedia 公司推出了交互式矢量图和 Web 动画的标准——Flash。在业界,Flash 被称为是“最为灵活 的前台”,利用 Flash 可以做出创作出既漂亮又可改变尺寸的导航界面以及其他奇特的效果。在我们所熟知 的 Flash 应用于站点建设上,它的使用带来了各种优点,如全面的控制、无缝的导向跳转、更丰富的媒体 内容、更体贴用户的流畅交互、跨平台和瘦客户端的支持、以及与其它 Flash 应用方案无缝连接集成等。 而在应用程序开发方面,由于 Flash 其独特的跨平台特性、灵活的界面控制以及多媒体特性的使用,使得 用 Flash 制作的应用程序具有很强的生命力,在与用户的交流方面具有其它任何方式都无可比拟的优势。 在软件系统界面开发方面,Flash 对于界面元素的可控性和它所表达的效果无疑具有很大的诱惑。对于一个 软件系统的界面,Flash 所具有的特性完全可以为用户提供一个良好的接口。 本程序主要应用了 Shockwave Flash Object 控件在 VC++下开发 FLASH 的应用软件 UI 启动画面。 二、控件简介 在基于 MFC 开发应用程序界面时我们大量使用了 Windows 标准控件, 其实在 Windows 里,还会常常接 触到 ActiveX 控件,它来源于第三方,而非 Windows 操作系统。这样的控件一般来说,功能丰富而且使用 方便,从而大大简化了程序员的工作。本文主要以程序中需要使用到的 Flash 控件为例细作阐述。 1.控件的注册 不同于 Windows 标准控件,ActiveX 控件需要注册才能使用,ActiveX 一般以.OCX 或者.DLL 文件格式 发布, 可以使用 VC 附带的工具来注册某个控件, 按照以下步骤: 在 VC 的 Tools 菜单下启动 ActiveX Control Test Container;在 ActiveX Control Test Container 里打开菜单 File\Register Controls…;弹出窗口 Register Controls 显示系统中已注册的所有 ActiveX 控件,点击左下角的“Register…”按钮;选择待注册的控件文件, 如:“C:\WINNT\system32\Macromed\Flash\swflash.ocx”即为 Macromedia Flash 的 ShockwaveFlash 控件文件; 注册 ActiveX 控件方法如图 1 所示:

VC6.0界面和英文菜单含义

VC6.0界面和英文菜单含义

VC++6.0系统开发环境在Windows98/2000/XP操作系统中正确安装了Visual C++6.0后,可以启动Visual C++6.0系统。

第一次运行时,将显示出“Tip of the Day”对话框,单击“Next”命令按钮,可看到有关各种操作的提示;如果不选中“Show tips at startup”复选框,那么以后运行Visual C++6.0时将不再出现此对话框。

单击“Close”命令按钮关闭此对话框,进入Visual C++6.0系统开发环境。

1开发环境的菜单功能Visual C++6.0开发环境界面由标题栏、菜单栏、工具栏、项目工作区窗口、文档窗口、输出窗口以及状态栏等组成。

在开发环境界面中,可以看到在它的上方排列着一系列菜单,如图1所示,而每一个菜单下都有各自的菜单命令。

在进一步与开发环境打交道之前,先了解各个菜单命令的基本功能是很有必要的,因为大部分的操作都是通过菜单来完成的。

图1VC++主菜单栏1.File莱单File菜单中的命令主要用来对文件和项目进行操作,如“新建”、“打开”、“保存”、“打印”等。

其中各项命令的功能描述如表1所示。

表1File菜单命令的快捷键及功能描述菜单命令快捷键功能描述New Ctrl+N创建一个新项目或文件Open Ctrl+O打开已有的文件Close关闭当前被打开的文件Open Workspace打开一个已有的项目Save Workspace保存当前项目Close Workspace关闭当前项目Save Ctrl+S保存当前文件Save As将当前文件用新文件名保存Save All保存所有打开的文件Page Setup文件打印的页设置(续表)菜单命令快捷键功能描述Print Ctrl+P打印当前文件内容或选定的当前内容Recent Files选择打开最近的文件Recent Workspace选择打开最近的项目Exit退出Visual C++6.0开发环境2.Edit菜单Edit菜单中的命令用来使用户方便快捷地编辑文件内容,如进行删除、复制等操作,其中大多数命令功能与Windows中标准字处理程序的编辑命令一致,各项命令的快捷键及它们的功能描述如表2所示。

VC界面显示图片

VC界面显示图片(JPG JPEG GIF)2007-12-23 02:14一、引言JPEG图像压缩标准随然是一种有损图像压缩标准,但由于人眼视觉的不敏感,经压缩后的画质基本没有发生变化,很快便以较高的压缩率得到了广泛的认可。

GIF格式虽然仅支持256色但它对于颜色较少的图像有着很高的压缩率,甚至超过JPEG标准,也得到了广泛的认同。

但作为众多程序员的一个重要的开发工具--Microsoft Visual C++ 6.0的MFC库却仅对没有经过任何压缩的BMP位图文件有着良好的支持,可以读取、显示、存储甚至在内存中创建一块内存位图。

由于BMP格式的图像没有经过任何的压缩,不论是作为程序的外部文件,还是作为程序的内部资源都要占据大量的空间,尤其是后者会大大增加可执行文件的长度。

可以看出,如果能用经过压缩、具有较好的压缩率的JPEG或GIF格式的图像来取代BMP文件在VC中的应用,无疑还是很有吸引力的。

二、设计思路虽然有一些操作、处理JPEG、GIF等其他格式图像的Active X控件,但总的来说使用起来并不太方便,笔者经过实验摸索,总结出了一种借助于COM接口的OLE方法来实现上述功能的一种简便方法,现介绍如下以飨广大读者:下面我们要使用IPicture 的COM接口,有必要对该图像接口做些了解:该接口主要管理图像对象及其属性,图像对象为位图、图标和图元等提供一种与语言无关的抽象。

和标准的字体对象一样,系统也提供了对图像对象的标准实现。

其主要的接口是IPicture和IPictureDisp,后者是由IDispatch接口派生以便通过自动化对图像的属性进行访问。

图像对象也支持外部接口IPropertyNotifySink,以便用户能在图像属性发生改变时作出决定。

图像对象也支持IPersistStream接口,所以它能从一个IStream接口的实例对象保存、装载自己,而IStream 接口也支持对流对象的数据读写。

VC制作界面

VC++程序员如何做好界面来源:网友发布日期:2013-03-01 15:14作者:Lucky Boy 浏览量:7310分享到:新浪微博腾讯微博更多 16本屌丝在新春放假期间闲来无事,在各大编程论坛溜达了一圈。

发现年前的帖子中,有VC++程序员在界面开发方面遇到了很多苦恼,有抱怨界面工作不好做的,有抱怨用错了界面库的,也有紧急求得技术问题帮助的。

看到这些,想起了五年前的我。

我那时正好在一家互联网公司担任技术总监一职,手下有三个人。

那是一家刚创办的公司,老板是我初中同学,他在美国呆了几年拿到EMBA后到国内创业。

在一次同学聚会上了解到彼此工作方向。

后面凭借对未来的向往一起创业,他负责营销和资金,我负责技术研发。

我们的目标是开发一款企业用的即时聊天软件(IM),那时还没有企业QQ和IMO。

我们感觉市场是空白的,而企业需求则是非常刚性的。

于是我们开始了美好的梦想之旅!我之前一直是做服务器后台底层编码的,弄过阿里巴巴的阿里旺旺的后台,所以后台部分基本都是现成的技术和框架,不需要占用我太多的时间。

老板让我招几个技术人员以辅助我的工作。

我在老板的眼里是技术牛人一个(也许我在他面前把自己吹的太高了),他经常以“大师”称呼我。

(虽然我表现的很谦虚,不过心理还是感觉良好,被别人认可的感觉真好!)。

于是我就招了三个懂点MFC的程序员进来一起做IM的客户端部分。

说实在的,那时我对VC++开发界面真没有什么经验,这三位小弟好像与我挺投缘的,都一致认为做界面嘛MFC就足够了。

当时,我关注过QT,虽然QT做出来的效果真不错,但有两个问题直接导致我放弃了它。

第一、发布出来的程序居然要带上十几兆的QT支持库(QTCore.dll,QTGUI.dll 等);第二、QT的调用真是奇怪,和MFC完全不一样的,特别是事件响应,再加上三个小弟对QT也不太熟。

所以最终大家都毫不犹豫地抛弃了它。

MFC做界面很容易,在窗口资源上摆上一个一个控件是所见即所得的,很直观的。

基于VC++和OpenGL声纳浮标系统模拟器操作界面设计


示 信息 , 显 示 内 容 与 浮 标 系 统 的 设 备 状 态 或 参 数 其
真 。 重 点介 绍 了操 作 界 面所 需要 的 各 个 模 块 , 以及 为每 个模 块 设 计 的基 于 C+ +语 言 的软 件 开发 类库 , 以利 用模 块 类 库 实 可 现 声 纳 浮标 搜 潜模 拟 器 的界 面 需 求 , 模 拟 器界 面 和 实 际装 备 完 全一 致 , 模 拟 器 起 到 教 学 和 训 练 的 作 用 。 使 使
A sr c :Pr c e i g fo t en e f p r t g i t ra eo o a u y s s e smu a o ,ak n f o t r r me o h bt t a o e d n r m h e d o e a i e fc f n r b o y t m i l t r i d o f wa efa ft e o n n s s t a s ln a l p r tn n e f c s d sg e o smu a et e s n r o e a i g it ra e r n p a t b e o e a i g i t ra e wa e i n d t i lt h o a p r t n e f c .Th v r d l t a sn e e o n e e e y mo u e h ti e d d f r o e a i g i t ra e a d t e vC+ + ~ a e o t r e e o me tc a sl r re e i n d f re e y mo u e a e e h tc l n p r tn n e f c n h b s d s fwa e d v lp n l s i a isd sg e o v r d l r mp a ia l i — b y to u e .Th e u r me t o p r t g i t ra e c n b a ife y u i zn h sca sl r re ,wh c k h p r t g i — rd cd e rq i e n ro e a i e f c a es tsid b t ii gt i ls i a is f n n l b ih ma et eo e a i n n t ra e o i lt rc n it n t h e l q i me t o t e smu a o a l y a r l fta h n n r i i g e f c fsmu a o o ss e twi t e r a u p n ,s h i lt rc n p a oe o e c i g a d ta n n . h e

vc6s-chap05-程序界面设计1

各项的含义:
TBSTYLE_FLAT:工具栏风格,平 WS_CHILD:子窗口 WS_VISIBLE:可见
CBRS_TOP:工具栏停靠位置,TOP-顶部,BOTTOM-底部… CBRS_GRIPPER:工具栏获得把手 CBRS_TOOLTIPS:工具条将显示工具提示 CBRS_FLYBY:在对应的状态栏中显示提示信息 CBRS_SIZE_DYNAMIC:工具栏尺寸可动态调整
7. 编写消息响应函数 //菜单消息响应函数 //点击消息对话1框菜单的消息函数 void CEx05_1View::OnTestMessagedlg1() {
AfxMessageBox("这是消息对话框1!"பைடு நூலகம்; }
//点击消息对话2框菜单的消息函数 void CEx05_1View::OnTestMessagedlg2() {
8. 编译、运行和测试
5.3 工具栏
5.3.1 工具栏资源编辑器 5.3.2 CToolBar类 5.3.3 常规工具栏 5.3.4 下拉式工具栏按钮
5.3.1 工具栏资源编辑器
1.创建工具栏
2.创建、移动和编辑工具栏按钮
(1) 创建一个新的工具栏按钮 (2) 移动一个工具栏按钮 (3) 删除一个工具栏按钮 (4) 在工具栏上的两个按钮中插入一个空白区 (5) 删除工具栏按钮的空白区
使该界面对象可选或不可选
SetCheck 在该界面对象 (菜单)前增加或删除一个check 标志
SetRadio 在该界面对象 (菜单)项前增加或删除一个圆点
SetText 改变显示在该界面对象 (菜单)上的字符串
CCmdUI 类没有基类,在更新命令处理函数内调用 CCmdUI类的相关函数更新菜单。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

事件响应
Member variables: Project Class name Control IDs:可添加变量的控件ID列表 对某一控件添加一个变量:
选中该控件ID -> Add Variable ->编辑
如,对IDC_TEXT添加成员变量m_stext
数据处理
数据层:处理数据 图形界面层:根据数据显示图形化界面 CMyData类,数据处理类
public: void setCnt(int cnt); int getCnt(); void addCnt(); void subCnt(); // m_icnt减1 private: int m_icnt;
在CGui_amazonsDlg类中结合数据显示相关图形,并且根据交互信 息(用户操作)完成对数据层数据的处理。 (1)创建对象实例:CMyData mydata; (2)操作:按下工具条按钮1,调用subCnt(),并重画棋盘
常用组件的使用
一些简单的常用组件: Static Text:展示静态文本&画板 Edit Box Button Check box Radio button Group box And so on
位图处理
Static Text作为“画板” 怎样在对话框绘制一个棋盘?
/* 此处可以在位图上绘制其他图形 */
pboardDC->BitBlt(0, 0, 500, 500, &MemDC, 0, 0, SRCCOPY); // 画出缓存中的图片 MemDC.SelectObject(&pOldBmp); // MemDC.DeleteDC(); // 删除DC m_BoardBmp.DeleteObject(); // 删除位图对象
接下来,就是往对话框中添加组件、绘制漂亮 的图形、添加消息处理、实现用户交互……
添加菜单
新建“菜单”: insert->resource->menu 可以选择new(新建)或import(导入)菜单 编辑“菜单”: 双击菜单项,弹出属性对话框后进行编辑。 注:a) ID的命名,保证唯一性以及规范性;b) 快捷键,如, 对文件选项添加快捷键为F,则Caption为:文件(&F) 加载“菜单”: 鼠标移动到当前对话框,右键属性,Menu项选中你所创建 的菜单的ID。
void CGui_amazonsDlg::OnTbitem1() { MessageBox("工具栏按钮1, cnt-- ", NULL, MB_OK); mydata.subCnt(); this->DrawBoard(); }
运行结果
3Q
m_Queen.Create(IDB_CHESS, 40, 40, RGB(255,255,255));

(4) 绘制棋子:
pt.x = 60; pt.y = 60; m_Queen.Draw( &MemDC,1,pt,ILD_TRANSPARENT);
事件响应
类向导:右键->class wizard
位图处理
在位图(棋盘)上绘制其他图形 打印字符串:
MemDC.TextOut(200, 200, "Hello World!"); 但字串会有白色的背景,把下面语句添加到上面语句之前,设置透明背景。 MemDC.SetBkMode(TRANSPARENT);
绘制棋子: (1) 导入图片:insert->resource->bitmap->import (ID:IDB_CHESS) (2) 创建CImageList对象实例:CImageList m_Queen; (3) m_Queen关联位图:
位图处理
缓冲技术:即将需要展现的图形先绘制在缓存DC 中,待所有图形绘制完成再加载到界面。源码实 现:
pBoardWnd->UpdateWindow(); CDC MemDC; // 创建DC MemDC.CreateCompatibleDC( pboardDC); // 内存缓存DC m_BoardBmp.LoadBitmap(IDB_BOARD); // 加载位图 // 选择位图到缓存区 pOldBmp = MemDC.SelectObject(&m_BoardBmp);
Message Maps Member variables
事件响应
Message Maps:
Project Class name Object IDs:组件ID列表 Messages:消息响应 Member functions:对应的成员函数
选中一个Object IDs后,在Messages中是其对应的 消息响应,双击某message(如:COMMAND)添 加相应的成员函数。双击该函数,调整至该函数体 就可编辑代码了。
添加工具条
工具栏是神马? 创建、编辑工具条: insert->resource->toolbar->new,编辑 加载工具条 (1)创建CToolBar对象实例,如:tbar (2)在OnInitDialog函数中初始化并加载: CRect rect(10,10,0,0); if(!tbar.CreateEx( this,TBSTYLE_FLAT, WS_CHILD|WS_VISIBLE|CBRS_ALIGN_TOP|CBRS_GRIPPER|C BRS_TOOLTIPS, rect)||!tbar.LoadToolBar(IDR_TOOLBAR) ) { TRACE0( "failed "); return FALSE; } tbar.ShowWindow(SW_SHOW); RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0); 编译,运行。看看效果吧!
VC++ 6.0 界面设计
2011-05-18
主要内容
创建Dialog工程 添加菜单 添加工具条 常用组件的使用 位图处理 事件响应 数据结合
创建Dialog工程
在vc++6.0中,可以创建许多不同类型的工 程。其中MFC AppWizard(exe)工程可以帮 助程序员快速编写界面程序。 通过MFC AppWizard(exe)可以创建单文档、 多文档和对话框三种类型的应用程序。
位图处理
1. 添加static text组件,调整位置与大小 2. 修改属性:ID(IDC_BOARD),caption,style选中notify (消息响应) 3. 导入位图:insert->resource->bitmap->import. ID修改为IDB_BOARD 1. 创建CWnd、CDC对象实例: CDC *pboardDC; CWnd *pBoardWnd; 5. 初始化,CWnd与Static text ID关联,并获取设备上下文 pBoardWnd=GetDlgItem(IDC_BOARD); pboardDC=pBoardWnd->GetDC(); 6. 加载位图(棋盘): 防止屏幕闪烁,缓冲技术
如何创建一个基于“对话框”的应用程序 呢?
创建Dialog工程
1. 2. 3. 4. 5. (1) (2)

创建MFC AppWizard(exe)工程 应用程序类型:选择dialog based 一如既往地next,直到finish出现 点击finish就OK啦。运行一下,看看成果吧 函数说明: OnInitDialog 对话框的初始化 OnPaint 绘图,获取DC,绘制文本、图片等
相关文档
最新文档