第3章 窗体和组件 本章主要内容: 窗体 组件常用方法和属性 文本显示输入类组件的使用 按钮类组件的使用 列表类组件的使用
3.1 窗体和组件 3.1.1窗体 认识窗体可以从了解窗体的属性、方法和事件入手。 窗体具有下面的一些重要属性: (1)BorderIcons属性 (2)BorderStyle属性 (3)Caption属性 (4)Font属性 (5)FormStyle属性 从窗体类型的角度来看,Windows环境中的应用程序可以分为下面的三类: 多文档界面(MDI)应用程序 单文档界面(SDI)应用程序 对话框应用程序
3.1 窗体和组件 (6)Icon属性 (7)Name属性 (8)Position属性 (9)WindowsState属性 3.1.2 组件 3.1.2 组件 Delphi中有两类组件,可视化组件和非可视化组件。 3.1.3 组件的常用属性及事件 在Delphi中,每一个组件都具有特定的属性、事件和方法。组件的属性是组件特性的描述,包括组件的外观特性(如位置、尺寸、外形、字体、可视性)和非可视化的特性,组件常见的基本属性见表3-4。
3.1 窗体和组件 属 性 说 明 Height 高度 Width 宽度 Left 组件在容器内的水平坐标,相对于容器左边。 Top 属 性 说 明 Height 高度 Width 宽度 Left 组件在容器内的水平坐标,相对于容器左边。 Top 组件在容器内的垂直坐标,相对于容器上边。 Align 组件上的对齐方式(居上、居下、居左、居右、居中) Visible 设置组件是否可见,默认值为可见(值为true) Caption 显示类组件的标题 Color 组件的背景颜色 Font 设置组件显示文本的字体 Ctl3D 是否以3D方式显示组件,默认值为true ShowHint 是否显示组件的提示信息,默认值为true,与Hint连用 Hint 当鼠标指针移到组件上时,组件显示的提示信息 Enabled 是否允许用户操作组件,true表示允许,false表示不允许 Name 用于标识组件的名称,在程序中通过Name可以调用该组件 TabOrder Tab次序
3.1 窗体和组件 组件的事件是对组件所做的某个动作或系统的某些行为(如按下鼠标、双击鼠标、窗体装入等)的反应。 事 件 说 明 事 件 说 明 OnClick 触发条件 OnDblClick 当鼠标双击时触发本事件 OnMouseDown 当鼠标左键按下时触发本事件 OnMouseMove 当鼠标移动时触发本事件 OnKeyDown 当按下任意键(包括组合键)时触发本事件 OnKeyPress 当按下任意键(单字符键)时触发本事件 OnKeyUp 当松开已按下键时触发本事件 OnEnter 当获得焦点时触发本事件 OnExit 当失去焦点时触发本事件 OnStartDrag 当开始拖动时触发本事件 OnDragDrop 当组件拖动操作结束时触发本事件
3.2 文本显示输入类组件 3.2.1 TLabel组件 1.概述 3.2 文本显示输入类组件 3.2.1 TLabel组件 1.概述 TLabel标签组件位于组件面板的Standard页上(如图3-1),可以显示一个只读的字符串。 图3-1 Standard组件页
3.2 文本显示输入类组件 2.主要属性和方法 (1) A1ign属性 (2) Alignment属性 (3) AutoSize属性 3.2 文本显示输入类组件 2.主要属性和方法 (1) A1ign属性 (2) Alignment属性 (3) AutoSize属性 (4) Layout属性 (5) TransParent属性 (6) WordWrap属性 3.2.2 TEdit组件 1.概述 TEdit文本框组件位于组件面板的Standard选项卡上(如图3-1),可以显示、编辑单独的一行文本。
3.2 文本显示输入类组件 (1) AutoSelect属性 (2) AutoSize属性 (3) CharCase属性 3.2 文本显示输入类组件 (1) AutoSelect属性 (2) AutoSize属性 (3) CharCase属性 (5) Hint属性 (6) IME属性 (7) PasswordChar属性 (9) ClearSelect方法 (10) CopyToClipboard方法 (11) CutToClipboard方法 (12) PasteFromClipboard方法 (13) SelectAll方法
3.2 文本显示输入类组件 3.2.3 TMemo组件 1.概述 TMemo备注框组件位于组件面板的Standard选项卡上,可以显示、编辑多行文本。 2.主要属性 (1) Lines属性 (2) ScrollBars属性 (3) WantTabs属性
3.3 按钮类组件 3.3.1 TButton组件 1.概述 TButton命令按钮组件用于为用户提供选择执行的命令,通常称为命令按钮。 3.3 按钮类组件 3.3.1 TButton组件 1.概述 TButton命令按钮组件用于为用户提供选择执行的命令,通常称为命令按钮。 2.主要属性 (1) Cancel属性 (2) Caption属性 (3) Default属性 (4) Enabled属性 (5) ModalResult属性 (6) Name属性
3.3 按钮类组件 3.3.2 TBitBtn组件 1.概述 TBitBtn位图按钮组件的作用和TButton组件相同,唯一的区别是可以在位图按钮上同时显示文本信息和位图。 2.主要属性 (1) Glyph属性 (2) Kind属性 (3) Layout属性 (4) Margin属性 (5) NumGlyphs属性 (6) Spacing属性 (7) Style属性
3.3 按钮类组件 3.3.3 TRadioButton组件 1.概述 3.3 按钮类组件 3.3.3 TRadioButton组件 1.概述 TRadioButton单选按钮组件可以在多个条件中选择唯一的一个。通常在使用单选按钮时,总是将其进行分组。在同一组中,只能同时选中一个按钮,其余按钮自动取消选中。在实现单选按钮的分组时,可以有两种方法: (1) 利用分组框组件(TGroupBox)和单选按钮组件(TRadioButton)实现。 (2) 利用单选按钮分组框(TRadioGroup)实现。 2.主要属性 (1) Checked属性 (2) Enable属性 (3) Visible属性
3.3 按钮类组件 3.3.4 TCheckBox组件 1.概述 TCheckBox复选框组件可以组成多项选择。用户可通过单击一个选项来选择或取消选择该选项,在一个选择组框中一次可做出多项选择。 2.主要属性 (1) Alignment属性 (2) AllowGrayed属性 (3) State属性 (4) Check属性
3.4 列表类组件 3.4.1 TListBox组件 1.概述 TListBox列表框组件可以显示一系列可滚动的项目列表,用户可以选中其中的一个或多个,但不能直接对这些项目进行修改。列表框中的项目列表是Items属性的值,可使用方法对列表框中的项目进行增加、删除和插入操作。 2.主要属性 (1) Columns属性 (2) ExtendedSelect属性 (3) IntegralHeight属性 (4) ItemHeight属性 (5) ItemIndex属性 (6) Items属性
3.4 列表类组件 (7) MultiSelect属性 (8) SelCount属性 (9) Selected属性 3.4 列表类组件 (7) MultiSelect属性 (8) SelCount属性 (9) Selected属性 (10) Sorted属性 3.4.2 TComboBox组件 1.概述 TComboBox组合框组件由一个编辑框和一个下拉式列表框组成,可以从多个列表条目中选择一个。 2.主要属性 (1) DropDownCount属性 (2) Enabled属性 (3) Style属性 (4) Text属性
3.4 列表类组件 (5) ItemIndex属性 (6) SetText属性 【例3-1】 3.4 列表类组件 (5) ItemIndex属性 (6) SetText属性 【例3-1】 设计用户登录验证的窗体,用来接收用户输入的用户名和口令,单击“确定”按钮进行验证,根据输入是否正确显示相应的提示信息,单击“取消”按钮退出程序。 姓名:admin,密码:123456 【实现步骤】 (1) 新建应用程序 (2) 定制窗体
3.4 列表类组件 表3-3 各组件属性设置 图3-2 窗体界面 组件名 属 性 属 性 值 Label1 Caption 姓名: 3.4 列表类组件 表3-3 各组件属性设置 图3-2 窗体界面 组件名 属 性 属 性 值 Label1 Caption 姓名: Label2 密码: edtName Text '' edtPass Button1 确定 Button2 取消
3.4 列表类组件 (3) 编写代码 (4) 运行程序 图3-3 程序进行结果
本章实训指导 1. 熟悉Delphi常用控件的方法和属性。 2. 掌握TLabel组件、TEdit组件和TMemo组件的用法。 3. 掌握TButton组件、TRadioButton组件、TCheckBox组件 4. 掌握TListBox组件、TComboBox组件的用法。 5.利用常用组件设计一个 具有加、减、乘、除功能的 计算器,如图3-4所示。 图3-4 程序界面