Visual C++ MFC简明教程(3)

第三部分:MFC样式

控制是用来建立Windows应用程序用户界面的用户界面对象。你所见到的大部分Windows应用程序和对话框只不过是由一些控制所组成的、用来实现程序功能的东西。为了建立有效的应用程序,你必须完全理解在Windows应用程序中应该如何合理的使用控制。有六个基本的控制:CStatic、CButton、CEdit、CList、CComboBox和CScrollBar。另外,Windows 95又增加了15增强了的控制。你需要理解的是那个控制能做些什么、你应该如何控制它的外表和行为以及如何让控制能响应用户事件。只要掌握了这些,再加上掌握了菜单和对话框,你就可以建立你所想象的任何Windows应用程序。你可以象本教程这样用程序代码来建立控制,也可以使用资源编辑器通过资源文件来建立。当然,对话框编辑器更方便些,它对于已经基本掌握了控制的情况下特别有用。

最简单的控制是CStatic, 它是用来显示静态文本的。CStatic类没有任何数据成员,它只有少量的成员函数:构造函数、Create函数(用于获取和设置静态控制上的图标)等等。它不响应用户事件。因为它的简单性,所以最好把它作为学习Windows控制的开端。

在本讲中,我们从CStatic着手,看一下如何修改和定制控制。在下一讲中,我们将学习CButton和CScrollBar类,以理解事件处理的概念。一旦你理解和掌握了所有控制极其类,你就可以建立完整的应用程序了。

基 础

MFC中的CStatic类是用来显示静态文本信息的。这些信息能够可以作为纯信息(例如,显示在信息对话框中的错误消息), 或作为小的标签等。在Windows应用程序的文件打开对话框中,你会发现有六个这样的标签。

CStatic控制还有几种其它的显示格式。你可以通过修改标签的样式来使它表现为矩形、边框或图标等。

CStatic控制总是作为子窗口的形式出现的。典型情况下,其父窗口是应用程序的主窗口或对话框。正如上一讲所介绍的,你用两行代码就可以建立一个静态控制:

CStatic *cs;

...

cs = new CStatic();

cs->Create("hello world",

WS_CHILD|WS_VISIBLE|SS_CENTER,

CRect(50,80, 150, 150),

this);

这两行代码是典型的MFC建立所有控制的代码。调用new来为CStatic类的事例分配内存,然后调用类的构造函数。构造函数是用来完成类所需要的初始化功能的。Create函数建立控制并把它放到屏幕上。

Create函数有五个参数:

lpszText: 指定了要显示的文本。

rect: 控制文本区域的位置、大小和形状。

pParentWnd: 指明CStatic控制的父窗口。该控制会出现在其父窗口中,且其位置是相对于其父窗口的用户区域而言的。

nID: 整数值,表示该控制的标识符。

dwStyle: 最重要的参数。它控制着控制的外观和行为。

CStatic样式

所有的控制都有各种显示样式。样式是在用Create函数建立控制时传递给它的dwStyle参数所决定的。对CStatic有效的样式简介如下:

时间: 2024-09-30 07:10:14

Visual C++ MFC简明教程(3)的相关文章

Visual C++ MFC简明教程(1)

第一部分:MFC导论 Visual C++ 不仅仅是一个编译器.它是一个全面的应用程序开发环境,使用它你充分利用具有面向对象特性的 C++ 来开发出专业级的 Windows 应用程序.为了能充分利用这些特性,你必须理解 C++ 程序设计语言.掌握了C++,你就必须掌握 Microsoft 基本类库 (MFC) 的层次结构.该层次 结构包容了 Windows API 中的用户界面部分,并使你能够很容易地以面向对象的方式建立 Windows 应用程序.这种层次结构适用于所有版本的 Windows 并

Visual C++ MFC简明教程(2)

第二部分:一个简单的MFC程序 在本将中,我们将一段一段地来研究上一将中提到的 MFC 应用程序,以便能理解它的结构和概念框架.我们将先介绍 MFC,然后在介绍如何用 MFC 来建立应用程序. MFC简介 MFC 是一个很大的.扩展了的 C++ 类层次结构,它能使开发 Windows 应用程序变得更加容易.MFC 是在整个 Windows 家族中都是兼容的,也就是说,无论是 Windows3.x.Windows95 还是 Windows NT,所使用的 MFC 是兼容的.每当新的 Windows

Visual C++ MFC简明教程(4)

第四部分:消息映射 应用程序放在窗口中的任何用户界面对象都具有两种可控制的特性:1) 它的外观,2) 它响应事件的行为.在上一讲中,你已经学习了CStatic控制和如何使用样式属性来定制用户界面对象的外观.这些概念可用于MFC中的所有不同控制类. 在本讲中,我们将介绍CButton控制,以理解消息映射和简单的事件处理.然后还要介绍使用CScrollBar控制的稍微复杂点的例子. 理解消息映射 在第二讲中,MFC程序不包括主要函数或时间循环.所有的事件处理都是作为CWinApp的一部分在后台处理的

MFC入门教程

Visual C++ MFC简明教程(1) Visual C++ MFC简明教程(2) Visual C++ MFC简明教程(3) Visual C++ MFC简明教程(4) MFC教程(1)--MFC概述 MFC教程(2)-- MFC和Win32 MFC教程(3)-- CObject类 MFC教程(4)-- 消息映射的实现(1) MFC教程(4)-- 消息映射的实现(2) MFC教程(5)-- MFC对象的创建(1) MFC教程(5)-- MFC对象的创建(2) MFC教程(6)-- 应用程序

F#简明教程二:F#类型系统和类型推断机制

在上一篇教程<F#与函数式编程概述>中我们了解到F#和函数式编程的一些特点,更多关于F#语言和函数式编程的介绍可以参考51CTO之前对微软MVP赵颉老师的专访<TechED 09视频专访:F#与函数式编程语言>.本节教程我们将学习到F#的一些基础原理,在开始之前,让我们先温习一下我们的Hello World代码: #light System.Console.WriteLine("This is one hello") printfn "This is

XML简明教程目录

XML简明教程第1课: 处理XML元素 XML简明教程第2课: 处理XML文档 XML简明教程第3课 处理XML数据岛 XML简明教程第4课: 使用XML对象模型 XML简明教程第5课:使用XML名域 XML简明教程第6课 使用XML Schema XML简明教程第7课:在XML文档中使用数据类型 XML简明教程第8课:访问经过类型定义的XML值 XML简明教程第9课:使用C++ XML DSO XML简明教程第10课 :C++ XML DSO中使用主/细节特征 XML简易教程之一 XML简易教

XSL简明教程目录

XSL简明教程(1)XSL入门 XSL简明教程(2)XSL转换 XSL简明教程(3)在客户端的实现 XSL简明教程(4)在服务器端的实现 XSL简明教程(5)XSL的索引 XSL简明教程(6)XSL过滤和查询 了解WEB页面工具语言XML(一)背景 了解WEB页面工具语言XML(二)定义 了解WEB页面工具语言XML(三)支持工具 了解WEB页面工具语言XML(四)应用分类 了解WEB页面工具语言XML(五)好处 了解WEB页面工具语言XML(六)展望

Linux防火墙iptables简明教程

  前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔除了许多冗余的内容,提取出尽量多的精华部分成文,和大家共同学习,本文涉及的内容包括如下 Linux防火墙iptables简明教程 1.安装iptables 2.查看现有的iptables规则 3.删除某iptables规则 4.清除现有iptables规则 5.创建规则 6.设置开机启动 7.保

Python类的定义、继承及类对象使用方法简明教程

  这篇文章主要介绍了Python类的定义.继承及类对象使用方法简明教程,本文用浅显易懂的语言讲解了类的定义.继承及类对象的使用,非常实用易懂,需要的朋友可以参考下 Python编程中类的概念可以比作是某种类型集合的描述,如"人类"可以被看作一个类,然后用人类这个类定义出每个具体的人--你.我.他等作为其对象.类还拥有属性和功能,属性即类本身的一些特性,如人类有名字.身高和体重等属性,而具体值则会根据每个人的不同;功能则是类所能实现的行为,如人类拥有吃饭.走路和睡觉等功能.具体的形式如