文档库

最新最全的文档下载
当前位置:文档库 > Windows常用控件的使用

Windows常用控件的使用

Windows常用控件的使用

Windows编程基础

1

本课程旨在向学员介绍:

1)掌握编辑框和普通按钮的使用

2)掌握单选按钮和复选框的使用

3)掌握列表框和组合框等控件的使用时间:学时9

教学方法:讲授+课上练习+课下作业

第五章Windows常用控件的使用

2

Windows常用控件的使用

?关于控件:

–对话框和控件是密不可分的。

–控件类从CWnd类派生过来的,所以他们实际上也是窗口,所以我们可以动态的创建他们,应该说掌握了这些控件,

就可以解决大部分界面设计的要求了

–控件担负着与用户交互的责任,比如按下按钮,显示图片等,按键的外观是由其属性决定的,在编辑对话框时,我

们可以对某一个控件属性进行修改。

3

控件类控件类

静态文本CStatic单选按钮CButton

图片控件CStatic组框CButton

编辑框CEdit组合框CComboBox

命令按钮CButton列表框CListBox

复选框CButton滚动条CScrollBar

4

Windows常用控件的使用

5

控件的创建

?控件的创建分为静态创建和动态创建两种方式

–静态创建 - 在对话框模板中创建控件

–动态创建 - 程序的运行中定义一个控件类对象,再通过Create 函数进行创建

Windows常用控件的使用

6

控件的访问

?访问控件一般有3种方法 :

–利用对话框的数据交换功能访问控件

?适用于静态创建的控件,通过调用UpdateData ()函数,实现对话框和控件的数据交换。

–通过控件对象来访问控件

–利用CWnd 类的成员函数来访问控件

关于General属性

?ID: 程序通过控件ID来访问一个控件。所有的控件中,只有Static Box控件和Group Box控件的ID是可以重复,一般使用默认设置IDC_STATIC,而其他类控件的ID在一个应用程序中应该是惟一的

控件可见性

标识一组中

第一个控件

分配帮助ID

给控件

7

静态文本控件

?静态控件用来显示文本串或图形信息的控件,

?包括下列两种控件

–静态文本控件,不要求与对话框交互,需要

显示的内容在Caption中给出。(注意属性)

–图片控件,用来显示边框、矩形或位图等图形。

?注意:

–所有静态控件默认的ID标识都为IDC_STATIC,

如果需要在程序中区分和操纵各个不同的静态控件,必须重新为它指定一个惟一的ID标识

8

Windows常用控件的使用

9

静态文本控件显示风格

Align text :控制静态文本控件的对齐方式

Center vertically :设置垂直方向居中显示

No prefix :”&”作为文本内容的一部分

Simple :禁止 No wrap 和Align text

Notify :控件被选中时,有相应消息发给父窗口

Sunken :使静态文本框凹陷显示

Border

Windows常用控件的使用

:使静态文本框带边框

10

图片控件显示风格

?用来显示边框、矩形、或位图等图形。编辑时,首先必须创建位图或图标资源,即要插入一个Bitmap (位图)或Icon (图标)

图片类型,可以选择图片类型,可以选择Frame(Frame(Frame(框框)、Rectangle(Rectangle(矩形区域矩形区域矩形区域))、Icon(Icon(图

图标)、Bitmap(Bitmap(位图位图位图))、Enhanced Metafile(Enhanced Metafile(增强图元文件增强图元文件增强图元文件)

) 设置设置Frame Frame Frame和和Rectangle Rectangle的颜色

的颜色 Icon Icon类型和

类型和BitMap BitMap设置设置设置 ID ID值值

Windows常用控件的使用

11

?可以通过Create 函数来动态的创建文本框?成员函数 Create

–BOOL Create ( LPCTSTR lpszText , DWORD dwStyle , const RECT & rect , CWnd * pParentWnd ,UINT nID = 0xffff );–lpszText :指定控件显示正文

–dwStyle :静态正文控件的风格,如

WS _VISIBLE ,WS _DISABLED …

–rect 为控件的引用,指定位置和尺寸。

–pParentWnd :指向父窗口,不能为NULL

–nID :控件ID

12

CStatic m_MyStatic; //定义成员变量

m_MyStatic.Create(_T(“my static”), WS_CHILD|WS_VISIBLE|SS_CENTER,CRect(10,10,150,50),th is);

CStatic m_MyStatic; //定义成员变量m_MyStatic.Create(_T(“my static”), WS_CHILD|WS_VISIBLE|SS_CENTER,CRect(10,10,150,50),th is);?创建CStatic 对象

?CStatic 类常用的成员函数:

–SetBitmap :设置要在静态控件上显示的位图。–SetIcon :设置要在静态控件上显示的图标。

–SetCursor :设置要在静态控件上显示的光标。–SetEnhMetaFile : 设置要在静态控件上显示的元文件。

控件-编辑框

?编辑框控件可以接受用户的输入和文本编辑.

在编辑框中,用户可以输入文字、数字,并能

用剪切、粘贴、拷贝、删除等操作来编辑用

户的输入,编辑框既可以是单行的,也可以

是多行的

?当该控件获得焦点时,在其编辑框的内部会出现一个闪烁的光标,编辑框控件只能接受纯文本形式的输入。

13

Windows常用控件的使用

Windows常用控件的使用

?Align Text:控件对齐方式

?Multiline:多行显示,通常不使用

?Number:限定只输入数字

?Horizontal scroll:多行下有效,提供水平滚动条

?Auto HScroll:当在编辑框最右端输入字符时,提供滚动支持

14

Windows常用控件的使用

15

?Vertical scroll :多行编辑下提供垂直滚动条?Auto VScroll :当到最下一行时如果按回车提供垂直滚动显示功能?

Password :不显示输入字符,显示的是”*”?

No hide selection :使编辑框文本保持选择状态显示?

OEM convert :从Windows 字符集转换到OEM 字符集?Want Return :Enter

Windows常用控件的使用

键换行

Windows常用控件的使用

16

?对应的控件类是CEdit

?成员函数 Create

–BOOL Create ( DWORD dwStyle , const RECT & rect , CWnd * pParentWnd , UINT nID );

–dwStyle :控件的风格,如WS _CHILD , WS _DISABLED …–rect 为控件的引用,指定位置和尺寸。

–pParentWnd :指向父窗口,不能为NULL

–nID :控件ID

17

CEdit* pEdit = new CEdit;pEdit->Create(ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP |WS_BORDER, CRect(10, 10, 100, 100), this, 1);

CEdit* pEdit = new CEdit;pEdit->Create(ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP |WS_BORDER, CRect(10, 10, 100, 100), this, 1);?创建CEdit 对象

?CEdit 类常用的成员函数:

–GetSel :获得编辑框控件中当前选择的其始字符和终止字符的位置。

–SetSel :选择编辑框控件中的一个字符范围。–GetLineCount :获得多行编辑框的行数。

Windows常用控件的使用

18

?CEdit 类常用的成员函数(续)

–CanUndo : 决定一个编辑框操作是可以撤销

–GetPasswordChar : 获得编辑框中的密码字符。–SetReadOnly :将编辑框中的控件设置为只读状态

Windows常用控件的使用

19

编辑框的消息

?EN _CHANGE :当编辑框中的文本已被修改,在新的文本显示之后发送。

?EN _HSCROLL :当编辑框的水平滚动条被使用,在更新显示之前发送。

?EN _KILLFOCUS :当编辑框失去焦点时发送。

?EN _MAXTEXT :文本数目到达限定值时发送。

?EN _UPDATE :编辑框中的文本已被修改,在新文本显示之前发送。

?EN _VSCROLL :当编辑框的垂直滚动条被使用,在更新显示之前发送。