




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章 Object Pascal语言基础n 2.1 语言成分n 2.2 语句与流程控制n 2.3 定义数据类型n 2.4 构造数据类型n 2.5 过程和函数2.1 语言成分n 2.1.1 程序组成n 2.1.2 标准数据类型n 2.1.3 运算符与表达式n 2.1.4 标准函数n 2.1.5 常量与变量2.1.1 程序组成n 程序结构【例2.1】 显示程序结构。v 词汇集n 基本字符n 保留字n 指示字n 标识符n 分隔符v 注释和编译指令n 注释n 编译指令v Pascal代码书写风格2.1.2 标准数据类型n 什么是数据类型n 数据类型的分类n 简单数据类型 n 构造数据类型 n 指针类型 2.1.2 标准数据类型v 整数类型v 实数类型v 布尔类型v 字符类型v 字符串类型2.1.3 运算符与表达式n 运算符n 算术运算符 关系运算符 位运算符 逻辑运算符v 运算符的优先级【例2.2】 mod运算的用法。(w + 1) mod 7/明天(w 1 + 7 ) mod 7/昨天2.1.3 运算符与表达式v 表达式n 表达式及其运算规则n 表达式的数据类型 布尔表达式中的短路计算 书写表达式时的注意事项【例2.3】 使用表达式。n i mod 2=0/取值为true时,i为一个偶数,否则为奇数n (i=0) and (i=9) /判断i的值是否在0到9之间2.1.4 标准函数n 函数的概念n 常用标准函数说明n 调用标准函数【例2.4】 使用标准函数。n odd(i) /取值为true时,i为一个奇数,否则为偶数n chr(ord(ch)+ord(a)-ord(A) /将ch转换成小写字母2.1.5 常量与变量n 常量n 直接常量和符号常量 n 常量定义 n 变量 n 变量声明 n 变量初始化 n 变量参与的运算 2.2 语句与流程控制n 2.2.1 简单语句n 2.2.2 流程控制的概念n 2.2.3 复合语句n 2.2.4 条件语句n 2.2.5 循环语句2.2.1 简单语句n 赋值语句【例2.5】 变量赋值。v 空语句v 过程调用语句n 读语句n 写语句【例2.6】 求一个三位数的数字和。【例2.7】 判断一个年份是否为闰年。2.2.2 流程控制的概念n 顺序结构 分支结构 循环结构图2.4 不执行与死循环2.2.3 复合语句begin 语句1; 语句2;end2.2.4 条件语句n if语句n if语句的语法格式if 布尔表达式then 语句1else 语句2【例2.8】 求三个整数中的最大值。 复合条件 if语句嵌套2.2.4 条件语句v case语句case 表达式 of 常量1: 语句1; 常量2: 语句2; else 语句n;end;【例2.9】 计算每月的天数。2.2.5 循环语句n while语句n while语句语法while 布尔表达式 do 语句【例2.10】 用while语句求110的累加和。 while语句循环执行次数问题讨论2.2.5 循环语句v repeat语句n repeat语句语法repeat 语句;until 布尔表达式;【例2.11】 用repeat语句求110的累加和。 repeat语句循环执行次数问题讨论2.2.5 循环语句v for语句n for语句语法for 循环变量:=初值 to 终值 do 语句for 循环变量:=初值 downto 终值 do 语句【例2.12】 用for语句求110的累加和。 for语句循环执行次数问题讨论2.2.5 循环语句【例2.13】 求一个日期(年月日)对应的是星期几。v 多重循环【例2.14】 求100以内的素数。2.3 定义数据类型n 2.3.1 类型定义n 2.3.2 枚举和子界类型n 2.3.3 类型兼容原则2.3.1 类型定义type 类型 = 类型描述;例如,type datatype = integer; arrint = array 1.10 of integer; 2.3.2 枚举和子界类型n 枚举类型n 定义枚举类型type 枚举类型 = (枚举常量,枚举常量) 声明枚举类型变量 枚举类型变量能够进行的操作 枚举类型变量不能进行的操作n 子界类型type 子界类型 = 常量1.常量2;2.3.3 类型兼容原则n 类型相同两个数据类型具有完全相同的性质。 n 类型相容两个不同的数据类型具有某些相同的性质n 赋值相容一种数据类型的值可以通过赋值操作赋给另一种数据类型的变量。 2.4 构造数据类型n 2.4.1 数组类型n 2.4.2 字符串类型n 2.4.3 集合类型n 2.4.4 记录类型n 2.4.5 文件类型n 2.4.6 指针类型2.4.1 数组类型n 一维数组n 定义一维数组类型type 数组类型 = array 下标类型 of 元素类型;n 声明一维数组变量n 数组声明时可赋初值n 数组元素的引用格式n 数组元素的运算n 获得数组下标的上界和下界n 两个数组变量间的赋值运算【例2.15】 用一维数组计算Fibonacci序列值。Fibonacci序列是指首两项为0、1,以后各项的值是其前两项值之和的序列:0,1,1,2,3,5,8,其数学中的递推定义为: 2. 二维数组【例2.16】 显示螺旋方阵。3. 动态数组var a:array of integer;SetLength(a,5);4. 不规则的多维数组【例2.18】 使用动态数组输出杨辉三角。2.4.2 字符串类型n 3种字符串类型n 字符串元素的运算n 字符串变量的运算n 用于字符串运算的标准过程和函数【例2.19】 判断回文字符串。2.4.3 集合类型n 集合类型的定义type集合类型 = set of 元素类型;n 集合类型的值n 集合类型的运算n 赋值运算n 关系运算n 属于运算n 集合运算【例2.20】 “筛选法”求素数。2.4.4 记录类型n 记录类型与变量n 对记录变量中的域进行操作n 对记录变量进行赋值操作【例2.21】 使用记录类型表示复数。v 开域语句type 记录类型 = record 域1:类型1; 域2:类型2; end;5. 记录数组var group:array 1.50of student; 2.4.5 文件类型文件类型是一种构造数据类型,根据文件中数据元素的数据类型,可将文件类型分为3种:文本文件、类型文件和无类型文件。对不同类型的文件所进行的操作也有所差别。文件类型的定义语法和使用方法详见9.3节。2.4.6 指针类型n 变量所占用存储单元的静态分配与动态分配n 静态变量和动态变量n 声明指针变量n 指针所指向的变量n 对指针变量的操作n 使用标准过程new与dispose动态生成或撤销变量n 指针指向数组和记录n 使用指针构成链表2.5 过程和函数n 2.5.1 过程的声明与调用n 2.5.2 函数的声明与调用n 2.5.3 变量的作用域n 2.5.4 参数传递n 2.5.5 过程/函数中参数的类型兼容原则n 2.5.6 过程/函数的重载n 2.5.7 递归的过程与函数2.5.1 过程的声明与调用n 过程声明procedure 过程 (参数列表);/过程首部 局部声明部分;/过程声明部分begin/语句体 语句;end;/此处以分号结束n 过程调用过程(参数,参数)2.5.2 函数的声明与调用n 函数声明function 函数(参数列表):类型;/函数首部 局部声明部分;/函数声明部分begin/语句体 语句;end;n 函数怎样返回值n fact:=10; /为函数名赋值,返回结果n result:=10 /为result变量赋值,返回结果n 函数调用函数过程(参数,参数)【例2.22】 计算阶乘并显示计算公式。2.5.3 变量的作用域n 全局变量n 局部变量【例2.23】 求100以内的Smith数。2.5.4 参数传递n 参数声明n 值参数n 变量参数n 常量参数n 输出参数n 参数默认值【例2.24】 求500以内的亲密数对。2.5.5 过程/函数中参数的类型兼容原则n 参数传递的类型兼容原则n 形式参数的类型声明限制n 函数返回值的类型限制2.5.6 过程/函数的重载function Max(A,B: Integer): Integer; overload;function Max(A,B: Int64): Int64; overload;重载的多个过程/函数之间必须满足以下两点:n 参数必须不同,即以不同的参数个数或参数类型来区别重载的过程/函数。n 返回值可以相同,也可以不同,即不能以不同的返回值来区别重载的过程/函数。2.5.7 递归的过程与函数【例2.25】 使用递归函数计算阶乘。实验2 Object Pascal语言程序设计基础训练n 金额的中文大写方式n 求解约瑟夫环问题 _第3章 Windows应用程序界面设计n 3.1 可视化编程基础n 3.2 窗体Formn 3.3 文本显示与编辑控件n 3.4 按钮n 3.5 选项按钮n 3.6 列表框n 3.7 界面布局n 3.8 定时器Timer3.1 可视化编程基础n 3.1.1 面向对象基本概念n 3.1.2 定义类和使用对象n 3.1.3 对象的属性、方法和事件n 3.1.4 事件驱动的Delphi应用程序n 3.1.5 组件概述3.1.1 面向对象基本概念n 类与对象n 类 n 对象 n 类的封装性、继承性和多态性 n 类的封装性 n 类的继承性 n 类的多态性 3.1.2 定义类和使用对象n 定义类n 定义子类type 类 = class(父类) 数据域声明; 方法声明首部; end;3. 使用对象n 声明对象var Form1 : TForm1; 对象实例化Application.CreateForm(TForm1, Form1); 引用对象中的数据域和调用对象的方法对象.数据域对象.方法(实际参数表) 释放对象aday.Free;4. self指代对象自身procedure TForm1.FormCreate(Sender: TObject);begin self.Caption:=self.Caption + 演示程序;end;5. as和is运算符Sender as TButton/将Sender对象转换为一个TButton类的对象Sender is TComponent/判断Sender是否属于TComponent类及其子类3.1.3 对象的属性、方法和事件n 对象的属性n 属性的读写特性:可读写属性和只读属性 n 属性的作用时间:设计时属性和运行时属性 n 引用对象属性对象.属性n 对象的方法n 对象的事件3.1.4 事件驱动的Delphi应用程序n 组件的事件由消息触发n Delphi应用程序由事件驱动procedure TForm1.Button1Click(Sender: TObject);begin /事件处理程序end;3.1.5 组件概述n 组件n 组件分类n 控件 n 窗口控件是能够获得输入焦点的控件。 n 图形控件是不能获得输入焦点的控件。 n 非可视组件 n 查看组件的属性、方法、事件及其类层次 图3.1 组件类图 3.2 窗体Formn 3.2.1 窗口与窗体n 3.2.2 窗体的属性、方法和事件3.2.1 窗口与窗体n 1. Windows窗口n 2. Delphi窗体3.2.2 窗体的属性、方法和事件n 窗体的主要属性n Name窗体对象名n Caption窗体标题n Left与Top窗体位置,左上角在屏幕的坐标n Height与Width窗体的高度与宽度n Color窗体工作区的背景颜色n Enabled窗体的有效性n Visible窗体的可视性n Icon窗体标题上的小图标n Font窗体的字体n Position窗体运行时的初始位置n WindowState窗体运行时的初始状态2. 窗体的主要方法n Close 关闭窗口n Create 创建并初始化一个窗口对象n Hide 隐藏窗口n SetFocus 使窗口获得焦点n SetFocusedControl 使窗口上的控件获得焦点n Show 显示被隐藏的窗口3. 窗体的主要事件n OnCreate和OnDestroy事件n OnShow和OnHide事件n OnActivate和OnDeactivate事件n OnClick和OnDblClick事件n OnPaint事件n OnCanResize和OnResize事件n OnCloseQuery和OnClose事件4. 窗体事件的触发次序n 创建窗口时n 由用户操作触发的事件n 关闭窗口时【例3.1】 理解窗体的事件。n 新建应用程序n 添加组件Label n 编写窗体OnCreate事件处理程序 n 窗体OnCanResize和OnResize事件处理程序 3.3 文本显示与编辑控件n 3.3.1 标签Labeln 3.3.2 单行编辑框Editn 3.3.3 格式编辑框MaskEditn 3.3.4 多行编辑框Memon 3.3.5 多行RTF文本编辑框RichEditn 3.3.6 渐变编辑框SpinEdit3.3.1 标签LabelLabel是一种用来显示文字的图形控件,它不能获得输入焦点,因而只能显示文本,不能编辑,常用来显示不需要修改的文字。 n 标签的主要属性 n Caption 显示的文字内容在窗体中引用组件属性的格式如下: 窗体.组件.属性self.Label1.Caption:=你好!;3.3.2 单行编辑框EditEdit是一种用于编辑单行文本的窗口控件,通常用于动态地输入一行文本。n 单行编辑框的属性n Text显示的文字内容n 单行编辑框的事件 n OnChange 当Edit的Text属性值改变时触发【例3.2】 求一个整数的各位数字。n 图形界面设计n 窗口初始化 n 程序响应输入值 n 避免程序出现运行错误 n 自定义函数isInteger(str) 3.3.3 格式编辑框MaskEditn EditMask属性n Text和EditText属性EditText是运行时属性 【例3.3】 使用MaskEdit编辑单行格式文本。n 设置文本格式 n 动态改变单行编辑框的文本 3.3.4 多行编辑框MemoMemo用于编辑多行文本。 n Lines属性n Alignment属性n WantReturns属性n WantTabs属性n ScrollBars属性3.3.5 多行RTF文本编辑框RichEditn RichEdit控件的主要属性n SelStart 和SelLenght 属性:选中文本块的起始位置和长度。 n DefAttributes 和SelAttributes 属性:默认字体样式和当前所选字体样式。 n Paragraph 属性:光标或选中块所在段落的段属性。 n RichEdit 控件的主要事件 n OnSelectionChange 事件 【例3.4】 多行文本编辑框。演示RichEdit控件的使用方法。 n 显示RichEdit1的选中块位置n 剪切、复制和粘贴操作 3.3.6 渐变编辑框SpinEditSpinEdit是一个带有上下箭头的编辑框,其中数据能够按照指定增量逐渐变化。n SpinEdit属性n Value属性表示值,n Increment属性表示每次的变化量。n MaxValue和MinValue属性表示数据变化范围,即最大值与最小值。n SpinEdit主要事件有OnChange事件 3.4 按钮n 3.4.1 按钮Buttonn 3.4.2 图像按钮BitBtnn 3.4.3 加速按钮SpeedButton3.4.1 按钮Buttonn Button按钮的主要属性n Caption 属性:按钮的标题。 n Default 属性:默认按钮,即按下Enter 键,将触发Button 的OnClick 事件。 n Cancel 属性:取消按钮,即按下Esc 键,将触发Button 的OnClose 事件。 n Button 按钮的主要事件 n OnClick 事件 3.4.2 图像按钮BitBtnn Kind属性决定BitBtn的种类。取值为 bkYes、bkNo等 n Glyph属性为BitBtn指定一个.bmp文件,显示在按钮表面。 n Layout属性控制位图与文本的相对位置,取值为blGlyphLeft(位图居左,默认值) 、blGlyphRight等 3.4.3 加速按钮SpeedButtonn Down属性:按下状态 n Flat属性:凸现 n GroupIndex属性:成组【例3.5】 设计“计算器”。使用Edit、BitBtn与SpeedButton控件 n 自定义两个过程用于输入和运算n 窗口初始化 n 数字和运算符按钮的事件处理程序 n 清除和退格按钮 n 关于自定义过程和函数的说明 n 关于本例的说明 3.5 选项按钮n 3.5.1 复选框CheckBoxn 3.5.2 单选按钮RadioButton与组框GroupBoxn 3.5.3 单选按钮组RadioGroup3.5.1 复选框CheckBoxCheckBox是一个带标签的方框,方框中打勾号R表示选择,表示不选择。单击可改变状态。 复选框选中与否的状态用Checked属性表示。 3.5.2 单选按钮RadioButton与组框GroupBoxn 单选按钮单选按钮RadioButton用来显示一组互斥的选择。 位于同一个组件中的多个单选按钮构成一个组,实现单选。 单选按钮选中与否的状态用Checked属性表示。 n 组框为一组相关联的组件提供一个可视分组, 3.5.3 单选按钮组RadioGroup单选按钮组RadioGroup是一个组框与一组单选按钮的组合。 其特有的属性有:n Columns,指明RadioButton的列数,取值范围为116n Items,指定各单选按钮的显示文本n ItemIndex,指示当前被选中RadioButton的序号3.6 列表框n 3.6.1 列表框ListBoxn 3.6.2 组合框ComboBoxn 3.6.3 复选列表框CheckListBox3.6.1 列表框ListBoxn 列表框的主要属性n Items属性n ItemIndex属性n Columns属性n MultiSelect属性n Selected属性n 列表框的主要方法n Clear方法,清除列表框中的所有数据项。n 列表框的主要事件n OnChange事件:当用户在列表框中选择新的数据项时触发。n OnClick事件:当用户单击列表框时触发。3.6.2 组合框ComboBoxn 组合框的主要属性n Style属性:指定组合框的类型,取值为csDropDown(可编辑且有下拉列表)、csDropDownList(不可编辑只有下拉列表)、csSimple(只可编辑没有下拉列表)。n 组合框的主要方法n 组合框的主要事件n OnChange事件:当用户在下拉列表中选择新的数据项,或在编辑框中修改了数据时触发。n OnDropDown事件:当用户单击编辑框右端的箭头按钮,打开下拉列表时触发。【例3.6】 设计字体对话框。 演示单选按钮、复选框、列表框和组合框等组件的使用方法。 n 改变文本颜色 n 改变字形 n 改变段落对齐方式 n 改变字体 n 改变字号 3.6.3 复选列表框CheckListBoxn Checked属性:运行时属性,表示每个数据项的状态。Checked是一个数组,元素类型为boolean。 n OnClickCheck事件:单击数据项前的复选框时触发。【例3.7】 管理关键词库。演示CheckListBox的多项选择用法 n 显示选中项 n 添加数据项 n 删除当前数据项 n 删除所有选中数据项 3.7 界面布局n 3.7.1 布局工具n 3.7.2 控件的包含关系n 3.7.3 布局属性Align与Anchorn 3.7.4 分隔条Splitter3.7.1 布局工具n 选择多个组件n 对齐对话框n 调整控件大小的Size对话框n 对齐工具栏3.7.2 控件的包含关系n 面板(Panel)n 控件的Parent属性3.7.3 布局属性Align与Anchorn Align属性n alNonen alLeft 、alRight 、alTop 和alBottomn alClientn Anchor 属性 3.7.4 分隔条Splittern Splitter的主要属性n Align属性n Beveled属性n MinSize属性n Splitter的主要事件n OnCanResize事件n OnMoved事件【例3.8】 分隔窗口。3.8 定时器TimerTimer是一个非可视组件n Enabled属性控制定时器的开关状态。 n Interval属性控制操作执行的时间间隔, n 只有一个事件OnTimer。 【例3.9】 字符串的滚动显示。使用Edit、SpinEdit及Timer组件。 n 字符串实现滚动 n 控制滚动速度 实验3 Windows应用程序界面设计n 整数进制转换。n 货币转换n 多项选择与数据移动第4章 菜单、工具栏和对话框n 4.1 菜单n 4.2 行为列表组件ActionListn 4.3 工具栏与状态栏n 4.4 消息框与输入框n 4.5 Windows通用对话框4.1 菜单n 4.1.1 主菜单MainMenun 4.1.2 弹出式菜单PopupMenun 4.1.3 菜单图像与图像列表组件ImageList4.1.1 主菜单MainMenu主菜单是相对于窗口而言的,它出现在窗口的标题栏下,与窗口同时出现。 n 菜单设计器n 菜单项的特性n 菜单项的状态n 复选n 单选【例4.1】 设计主菜单。n 添加主菜单组件 n 添加菜单项 n 设置分隔条 n 子菜单 n 设置快捷键和加速键n 设置有效状态 n 设置复选标志 n 设置单选标志 n 编写菜单项的事件处理程序 菜单结构 4.1.2 弹出式菜单PopupMenu弹出式菜单是相对于控件而言的n 将某个控件的PopupMenu属性设置为一个已存在的弹出式菜单 4.1.3 菜单图像与图像列表组件ImageListn 图像列表组件中添加图像n 菜单与图像列表组件相关联n 菜单组件与图像列表组件相关联 n 菜单项与ImageList 中的指定图像相关联 4.2 行为列表组件ActionListn 行为(Action)n ActionList编辑器n 添加标准行为n 自定义行为【例4.2】 使用ActionList组件设计菜单。添加系统定义的Cut、Copy和Paste等标准行为n 添加组件 n 为ActionList添加行为 n 使用Action属性创建菜单项 4.3 工具栏与状态栏n 4.3.1 工具栏ToolBarn 4.3.2 状态栏StatusBar4.3.1 工具栏ToolBarn 创建ToolBar的按钮ToolButtonn 执行New Buttonn 执行New Separatorn ToolBar 上添加其他组件 【例4.3】 设计工具栏。建立常用与格式工具栏,演示自定义行为的操作。n 设计常用工具栏 n 格式工具栏上添加按钮n 添加带下拉菜单的按钮 n 格式工具栏上添加ComboBox、SpinEdit等组件 n 格式工具栏的状态随着光标位置处文本字体的改变而改变 n 显示与隐藏工具栏 n 自定义行为 4.3.2 状态栏StatusBarSimplePanel属性决定单面板与多面板。【例4.4】 设计状态栏。n 添加状态栏 n 显示光标当前位置 n 显示数据修改过的状态 n 显示系统时间 4.4 消息框与输入框n 4.4.1 消息框与信息函数n 4.4.2 输入框与输入函数4.4.1 消息框与信息函数n ShowMessage过程procedure ShowMessage(const Msg : string);n MessageDlg函数function MessageDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons;HelpCtx: integer): integer;例如,MessageDlg(数据已经改动,是否存盘?,mtConfirmation, mbYes,mbNO,mbCancel,1);n MessageDlgPos函数4.4.2 输入框与输入函数n InputBox函数function InputBox(const ACaption, APrompt,ADefault:string):string;例如,LoginName:=InputBox(登录,请输入用户名:,guest);n InputQuery函数function InputQuery(const ACaption, APrompt:string;var Value:string):Boolean;4.5 Windows通用对话框n 4.5.1 打开与保存文件对话框n 4.5.2 字体与颜色对话框n 4.5.3 查找与替换对话框n 4.5.4 页面设置、打印与打印设置对话框对话框组件类 4.5.1 打开与保存文件对话框n 打开文件对话框(OpenDialog)n 调用打开文件对话框:执行Execute 方法 n OpenDialog 组件的属性:FileName 、InitialDir 、Filter 、Options n OpenDialog 的主要事件:OnFolderChange n 保存文件对话框(SaveDialog ) n 打开与保存图形文件对话框 4.5.2 字体与颜色对话框n 字体对话框(FontDialog)n 执行 Execute 方法,所选字体存储在FontDialog.Font 属性中 n 颜色对话框(ColorDialog ) n 执行 Execute 方法,所选颜色存储在ColorDialog.Color 属性中 n TColor 类 n 以RGB 函数值表示颜色:RGB (255,0,0 ) n 以常量值表示颜色:clRed 、clGreen 4.5.3 查找与替换对话框n 查找对话框(FindDialog)n 执行Execute 方法 n FindDialog 的属性 n FindText 属性,保存查找内容字符串。 n Options 属性,集合类型,设置全字匹配、区分大小写、查找方向等选项。 n FindDialog 的事件 n OnFind 事件,单击【 查找下一个】 按钮时触发。 n OnClose 事件,单击【 取消】 按钮时触发。 2. 替换对话框(ReplaceDialog)n 执行Execute方法 n ReplaceDialog的属性n FindText属性,保存查找内容字符串。n ReplaceText属性,保存替换内容字符串。n Options属性,设置选项。n ReplaceDialog的事件n OnFind事件,单击【查找下一个】按钮时触发。n OnClose事件,单击【取消】按钮时触发。n OnReplace事件,单击【替换】或【全部替换】按钮时触发。 【例4.5】 调用系统对话框。n 新建文件功能 n 打开文件 n 保存与另存文件n 设置字体 n 改变颜色n 查找 v 替换 替换算法描述 调用指定事件处理程序 父类对象与子类对象的识别 4.5.4 页面设置、打印与打印设置对话框n 页面设置对话框(PageSetupDialog)n 打印对话框(PrintDialog)n 打印设置对话框(PrinterSetupDialog)实验4 设计菜单、工具栏n 实验1自动判题n 实验2设计记事本或写字板第5章 使用复杂组件n 5.1 滚动控件n 5.2 日期类控件n 5.3 多页控件PageControln 5.4 进程条ProgressBarn 5.5 字符串网格StringGridn 5.6 树形视图TreeViewn 5.7 列表视图ListView5.1 滚动控件n 5.1.1 滚动条ScrollBarn 5.1.2 带刻度的滚动条TrackBarn 5.1.3 微调按钮UpDown5.1.1 滚动条ScrollBarn ScrollBar的主要属性n Kind 指定ScrollBar 的方向,取值为sbHorizontal (水平)、sbVertical (垂直) n Position 指定ScrollBar 中滚动块的当前位置 n Min 指定Position 属性的最小值 n Max 指定Position 属性的最大值 n ScrollBar 控件的主要事件 n OnChange 当Position 属性值改变时触发 n OnScroll 当拖动滚动条上滑块时触发 【例5.1】 合成颜色。n 界面设计 n 窗口初始化 n 改变Shape的颜色 n 响应编辑框中输入值 5.1.2 带刻度的滚动条TrackBarn TrackBar的主要属性n Orientation属性:指定摆放方向,取值为trHorizontal(水平)、trVertical(垂直)。n TickMarks属性:指定刻度出现位置,取值为tmBottomRight(右边或下边)、tmTopLeft(左边或上边)、tmBoth(两侧)。n Frenquency属性:指定刻度间隔。n TrackBar的主要事件:OnChange 5.1.3 微调按钮UpDownn UpDown的主要属性n Associate指定UpDown依附的控件n AlignButton指定UpDown与其所依附控件的相对位置,取值为udLeft(左侧)、udRight(右侧)n Increment当单击按钮时,控制Position的增量,默认值为1。n Orientation指定按钮方向,取值为udHorizontal(水平)、udVertical(垂直)n UpDown的主要事件n OnChanging和OnChangingEx事件n OnClick事件5.2 日期类控件n 5.2.1 日期时间类TDateTimen 5.2.2 日期和时间控件DateTimePickern 5.2.3 月历控件MonthCalendarn 5.2.4 日历控件Calendar5.2.1 日期时间类TDateTimen TDateTime的整数部分记载天数,小数部分记载小时数。例如,n 0表示12/30/1899 12:00 amn -1.25表示12/29/1899 6:00 amn 35065 表示1/1/1996 12:00 am n TDateTime类提供的过程和函数 n function Date: TDateTime; /返回当前日期n function Time: TDateTime; /返回当前时间n function Now: TDateTime; /返回当前日期与时间n function EncodeDate(Year, Month, Day: Word): TDateTime; /日期编码n procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word); /日期解码5.2.2 日期和时间控件DateTimePickern DateTimePicker的主要属性 n Date 日期值,如2000-1-1n Time 时间值,如10:10:10n Kind 显示类型,取值为dtkDate (日期)、dtkTime (时间) n DateFormat 日期的显示格式,取值为dfShort (短日期,两位年份)、dfLong (长日期,四位年份) n MaxDate 日期的最大值 n MinDate 日期的最小值 5.2.3 月历控件MonthCalendarn MonthCalendar的主要属性 n MultiSelect 指定是否允许多选。 n ShowToday 指定是否特别标注Today 的日期 n ShowTodayCircle 指定Today 值是否有红色圈标注 n WeekNumbers 指定是否显示周数列表。 n FirstDayofWeekMonthCalendar 表格以星期几开始排列。 5.2.4 日历控件Calendarn Calendar的主要属性 n Year 、Month Day 分别表示日期中的年、月、日值 n GirdLineWidth 指定网格线的宽度 n StartofWeek 指定Canlendar 表格以星期几开始排列。取值为0 (星期日,默认)、1 (星期一)等 5.3 多页控件PageControln 建立多页n 执行弹出式菜单命令New PagePageControl的选中状态有所不同: n 单击PageControl标题,选中PageControl控件;n 单击页面,选中当前TabSheet页面。2. PageControl多页控件的主要属性n ActivePage指定PageControl控件的当前页。n Multiline指定PageControl控件是否呈现多行风格n Images 指定与PageControl相关联的图像列表组件n PageCount指明PageControl控件的总页数n Pages 保存PageControl控件的所有页面。Pages是一个数组,元素类型为TTabSheet,元素个数放在PageCount中n ActivePageIndex指明当前活动页的Pages属性的下标,从0开始计数例如,PageControl1.ActivePage := PageControl1.PagesPageControl1.PageCount-1;3. TabSheet页面的主要属性n Caption标签页名称n PageIndex该页在Pages数组中的下标,从0开始n TabVisible该页是否可见n ImageIndex该页使用的图像在ImageList中的索引值【例5.2】 多页方式显示日期与月历。n 添加PageControl n 各页显示图标 n 页面上添加控件 n 窗口初始化 n 识别当前页 n 使3个日期类控件所显示的日期一致 n 按钮上的控制 5.4 进程条ProgressBarn ProgressBar的主要属性n Position指定ProgressBar的当前位置。n Max和Min确定ProgressBar的位置范围。n Step指定ProgressBar控件变化的增量n ProgressBar的方法n procedure StepIt; /使Position属性增加Step属性值 procedure StepBy(Delta:Integer); /使Position属性增加参数Delta值5.5 字符串网格StringGridn ColCount指定列数n RowCount指定行数n FixedCols指定固定列。n FixedRows指定固定行n DefaultColWidth指定列宽度n FixedColor指定固定行和固定列的背景色n Cell运行时属性数组元素。数组下标从0开始。例如,StringGrid.Cell1,0表示第2列、第1行的元素【例5.3】 银行贷款按月还本付息的计算。已知计算公式为:n 月还本金 = 贷款金额 (贷款年限*12月)n 本金余额 = 贷款金额 累计已还本金n 月还利息 = 贷款利率 本金余额n 月还本息 = 月还本金 月还利息5.6 树形视图TreeViewn 5.6.1 树与结点n 5.6.2 使用TreeView控件n 5.6.3 结点类TTreeNode5.6.1 树与结点树TreeView中的数据项也称为结点,结点属于TTreeNode类。换言之, TreeView控件是TreeNode结点对象的容器。 5.6.2 使用TreeView控件n TreeView的Items属性用于存储结点n 存储TreeView 中的结点及其结构 n 设置结点的属性 n TreeView 的主要属性 n TreeView 的主要方法 n TreeView 的主要事件 n OnChange 事件:当选中结点发生变化后触发。 5.6.3 结点类TTreeNoden TTreeNode类的主要属性n TreeView与TreeNode的属性比较n TreeView.Items属性与TreeNode.Item属性比较n TreeView.Items.Count属性与TreeNode.Count属性比较n TreeView与TreeNode的Selected属性比较n TTreeNode类的主要方法n 增加结点n 插入结点n 查找结点n 删除结点【例5.4】 切换显示系统图像。n 界面设计n 窗体初始化 n 单击TreeView1结点时,切换图像 n 程序设计说明 5.7 列表视图ListViewn ListView的主要属性n ViewStyle属性n Items属性n LargeImages属性n SmallImages属性n Columns属性n ColumnClick属性v ListView的主要事件n OnDblClick事件n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论