当前位置:文档之家› PowerBuilder 9.0演示文稿

PowerBuilder 9.0演示文稿

本文由junne_chen贡献
ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
PowerBuilder 9.0
第1 章 第2 章 第3 章 第4 章 第5 章 第6 章 第7 章 第8 章 PowerBuilder 9.0概述 9.0概述 数据库管理 PowerBuilder 编程 窗口对象 窗口控件 菜单 数据窗口对象 数据窗口控件
2011-3-5
1
第1章
PowerBuilder 9.0概述 9.0概述
9.0简介 1.1 PowerBuilder 9.0简介 9.0的开发环境 1.2 PowerBuilder 9.0的开发环境 1.3 应用程序开发步骤 1.4 第一个应用程序 – 写字板 1.5 本书实例概述 本章小结 练习
2011-3-5
2
9.0简介 1.1 PowerBuilder 9.0简介
PowerBuilder 9.0能够设计传统的高性能、基于客户/服务器 能够设计传统的高性能、 能够设计传统的高性能 基于客户/ (Client/Server)体系结构的应用系统外,也能够用于开发基 )体系结构的应用系统外, Internet的应用系统 的应用系统。 于Internet的应用系统。
9.0的基本特点 1.1.1 PowerBuilder 9.0的基本特点
1.支持多种计算模式 2.跨平台的开发环境 3.支持面向对象的编程 4.支持多种关系数据库管理系统 5.丰富的数据表现风格 6.灵活快捷的数据转移方法 7.功能强大的调试器和多种调试方式
2011-3-5
3
9.0的主要新特性 1.1.2 PowerBuilder 9.0的主要新特性
9.0 版本更加完善的数据库支持和多层组件化应用开发 机制、功能更强的企业应用服务器(EAServer) 机制、功能更强的企业应用服务器(EAServer)性能以 及更加完美的.NET技术支持与Web应用表述能力。 .NET技术支持与Web应用表述能力 及更加完美的.NET技术支持与Web应用表述能力。 数据窗口支持XML 1.数据窗口支持XML 2.PowerBuilder 文档对象模型 PowerBuilder本地接口 3.PowerBuilder本地接口 JSP目标 4.JSP目标 9.0在 Targets方面所提供的新特性 5.PowerBuilder 9.0在JSP Targets方面所提供的新特性 JSP客户端Web服务 客户端Web 6.JSP客户端Web服务 Windows客户端Web服务 客户端Web 7.Windows客户端Web服务 8.其他方面的新特性
2011-3-5
4
9.0的开发环境 1.2 PowerBuilder 9.0的开发环境
PowerBuilder 的集成开发环境为开发人员提供了一个交互 式定义对象、编写代码、调试程序的图形界面。 式定义对象、编写代码、调试程序的图形界面。
1.2.1 主窗口
1.Workspace窗口 Workspace窗口 2.Clip窗口和Output窗口 Clip窗口和Output窗口 窗口和Output
1.2.2 工具栏
1.PowerBar 2.PainterBar 3.StyleBar 4.定制工具栏
1.2.3 画板
PowerBuilder的开发环境由一系列集成的画板组成。 PowerBuilder的开发环境由一系列集成的画板组成。 的开发环境由一系列集成的画板组成
2011-3-5

5
1.3 应用程序开发步骤
用PowerBuilder开发应用系统时,一般都要经过系统分析、 PowerBuilder开发应用系统时,一般都要经过系统分析、 开发应用系统时 系统设计、系统开发、代码调试、系统测试、生成EXE EXE、 系统设计、系统开发、代码调试、系统测试、生成EXE、交付 应用等各个阶段。 应用等各个阶段。
1.3.1 系统分析和系统设计
开发任何应用系统之前,开发人员必须充分了解系统需求, 开发任何应用系统之前,开发人员必须充分了解系统需求, 理解系统应该完成的真正任务, 理解系统应该完成的真正任务,这一阶段的成果很大程度上 决定了项目的成败。理解了系统需求后, 决定了项目的成败。理解了系统需求后,就进入系统设计阶 考虑用户界面的风格、使用何种数据库、 段,考虑用户界面的风格、使用何种数据库、如何组织数据 等。
1.3.2 系统开发
在PowerBuilder 中,建立应用程序需做的大量工作是创建 对象、描述对象、设置属性, 对象、描述对象、设置属性,而不是编写大量的代码
2011-3-5 6
1.4 第一个应用程序 – 写字板
PowerBuilder应用程序的开发过程实际上就是定义对象、组 应用程序的开发过程实际上就是定义对象、 应用程序的开发过程实际上就是定义对象 合对象的过程。对象是PowerBuilder极为重要的概念之一, 极为重要的概念之一, 合对象的过程。对象是 极为重要的概念之一 它包括三方面的特征:属性、事件和函数。 它包括三方面的特征:属性、事件和函数。 本例题的功能主要实现新建、打开、保存文档,也可以通过 本例题的功能主要实现新建、打开、保存文档, 编辑菜单的命令对文本实现剪切、复制、粘贴等操作, 编辑菜单的命令对文本实现剪切、复制、粘贴等操作,如图 1.12所示。 1.12所示。 所示
2011-3-5
7
1.5 本书实例概述
1.5.1 商务进销存系统的需求
商务进销存系统用于管理商业企业的业务活动,包括: 商务进销存系统用于管理商业企业的业务活动,包括:商业 基本信息维护、采购管理、销售管理、资金往来管理和利润 基本信息维护、采购管理、销售管理、 核算。 核算。
1.5.2 商务进销存系统的功能 1.5.3 商务进销存系统的数据库设计
2011-3-5
8
本章小结
本章首先扼要地介绍了PowerBuilder 9.0是一种高性能的客 本章首先扼要地介绍了PowerBuilder 9.0是一种高性能的客 服务器模式以及分布式数据库应用程序的前端开发工具, 户/服务器模式以及分布式数据库应用程序的前端开发工具, 详述了其基本特点和主要新特性, 详述了其基本特点和主要新特性

,然后阐述集成开发环境的 组成、各画板的功能、作用、定制开发环境的方法等, 组成、各画板的功能、作用、定制开发环境的方法等,并在 章尾介绍对象的基本概念以及开发PowerBuilder PowerBuilder应用程序的 章尾介绍对象的基本概念以及开发PowerBuilder应用程序的 基本步骤,并通过一个实例帮助读者学习和了解 基本步骤, PowerBuilder编程的基本过程 编程的基本过程。 PowerBuilder编程的基本过程。
2011-3-5
9
练习
支持那些种计算模式, 1.PowerBuilder支持那些种计算模式,各有何特点? 支持那些种计算模式 各有何特点? 有哪些画板, 2.PowerBuilder有哪些画板,其功能是什么? 有哪些画板 其功能是什么? 3.PowerBuilder应用程序的开发步骤是什么? 应用程序的开发步骤是什么? 应用程序的开发步骤是什么 试一试在你的计算机上安装一个PowerBuilder 9.0,然后将 9.0, 4.试一试在你的计算机上安装一个 本章的实例放进去,体验一下用 9.0编程的快乐 编程的快乐。 本章的实例放进去,体验一下用PowerBuilder 9.0编程的快乐。
2011-3-5
10
第2章
数据库管理
2.1 创建和删除数据库 2.2 数据库接口和数据库连接 2.3 操纵数据库表 2.4 定义列的扩展属性 2.5 创建索引键及主关键字 表中数据的浏览、 2.6 表中数据的浏览、修改和输出 2.7 视图 本章小结
2011-3-5 11
2.1 创建和删除数据库
2.1.1 数据库画板 画板是专门用来管理数据库的一种工具, Database 画板是专门用来管理数据库的一种工具,它具有很全 面的数据管理能力,它既创建和删除ASA数据库、定义ODBC ASA数据库 ODBC数 面的数据管理能力,它既创建和删除ASA数据库、定义ODBC数 据源、连接数据库还可以创建和管理表及数据等等。 据源、连接数据库还可以创建和管理表及数据等等。 创建Adaptive Anywhere数据库 2.1.2 创建Adaptive Server Anywhere数据库 在进入Database 画板后,打开Objects 子窗口(如图2.2) 在进入Database 画板后,打开Objects 子窗口(如图2.2) 2.2 在这个子窗口中,依次展开“ ODBC”、 Utilities” 在这个子窗口中,依次展开“ODB ODBC 、“Utilities 、 Database”选项 弹出“ 选项, “Create ASA Database 选项,弹出“Create Adaptive 对话框(如图2.3 2.3) Server Anywhere Database ” 对话框(如图2.3) 2.1.3 删除数据库 如果要删除数据库,可在数据库画板中(如图2.2),鼠标双 2.2), 如果要删除数据库,可在数据库画板中(如图2.2),鼠标双 Database”项 选择所要删除的数据库名, 击“Delete ASA Database 项,选择所要删除的数据库名, 然后单击“保存”按钮,在弹出的对话框中选择按钮“ (Y)” 然后单击“

保存”按钮,在弹出的对话框中选择按钮“是(Y) 即可. 即可.
2011-3-5 12
2.2 数据库接口和数据库连接
PowerBuilder提供了两类与数据库的接口:ODBC接口和专 PowerBuilder提供了两类与数据库的接口:ODBC接口和专 提供了两类与数据库的接口 用接口。 用接口。 ODBC以关系数据库标准查询语言SQL来存取连接到的数据源 以关系数据库标准查询语言SQL来存取连接到的数据源, ODBC以关系数据库标准查询语言SQL来存取连接到的数据源, ODBC支持单个应用系统访问多个不同的数据库管理系统 ODBC支持单个应用系统访问多个不同的数据库管理系统 DBMS) (DBMS)。 专用接口针对具体的数据库管理系统而设计, 专用接口针对具体的数据库管理系统而设计,通过专用接 口我们可以将PowerBuilder 连接到相应的数据库上。 口我们可以将PowerBuilder 连接到相应的数据库上。
2011-3-5
13
创建ODBC 2.2.1 创建ODBC 数据源
ODBC 数据源指明了数据库的基本属性,如物理数据库的位置、 数据源指明了数据库的基本属性,如物理数据库的位置、 驱动程序、用户名、口令等。通过ODBC 驱动程序、用户名、口令等。通过ODBC 数据源可以不关心物 理数据库。多个ODBC 数据源可以指向同一个物理数据库。 理数据库。多个ODBC 数据源可以指向同一个物理数据库。 创建ODBC 数据源的工作既可以使用数据库画板完成,也可以 创建ODBC 数据源的工作既可以使用数据库画板完成, Windows的控制面板中 ODBC数据源 管理来完成。 的控制面板中“ 数据源” 在Windows的控制面板中“ODBC数据源”管理来完成。
2.2.2 连接数据库
完成数据源的创建之后,就要进行数据库的连接。 完成数据源的创建之后,就要进行数据库的连接。 PowerBuilder 开发环境连接到数据库的工作实际上要经过两 个步骤:第一步,建立数据库描述文件或设置连接参数。 个步骤:第一步,建立数据库描述文件或设置连接参数。第 二步,连接到ODBC数据库。 二步,连接到ODBC数据库。 ODBC数据库
2011-3-5
14
2.3 操纵数据库表
数据库连接成功后,就可以创建、修改和删除表(Table) (Table); 数据库连接成功后,就可以创建、修改和删除表(Table) ; 创建和删除索引(Index) 创建、修改和删除主键(Primary (Index); 创建和删除索引(Index);创建、修改和删除主键(Primary Key)和外部键 和外部键(Foreign Key);查看与编辑数据等。 Key)和外部键(Foreign Key);查看与编辑数据等。 数据表是一个二维表, 数据表是一个二维表,它可以表示一个关系数据模型中的 关系。由列表示字段(或域),由行表示元组(或记录)。 ),由行表示元组 关系

。由列表示字段(或域),由行表示元组(或记录)。
2.3.1 创建表
在数据库画板中,在刚创建的数据库的“Table 项上 项上, 在数据库画板中,在刚创建的数据库的“Table”项上,单 击鼠标右键, Table”项单击鼠标左键 项单击鼠标左键, 击鼠标右键,选“New Table 项单击鼠标左键,即可打开 列视图
2.3.2 修改表结构
只能修改非关键描述, 只能修改非关键描述,不能对已经定义过的列数据类型进 行修改。修改表的操作可以在数据库画板中完成, 行修改。修改表的操作可以在数据库画板中完成,找到要 修改的表,单击鼠标右键,弹出菜单,如图2.14 2.14, 修改的表,单击鼠标右键,弹出菜单,如图2.14,选 Table”项单击鼠标左键 弹出列视图, 项单击鼠标左键, “Alter Table 项单击鼠标左键,弹出列视图,修改相应 的列或增加、删除列。 的列或增加、删除列。
2011-3-5 15
2.3.3 删除表
当一个和多个数据表不再使用时,可以将其删除。删除一个 当一个和多个数据表不再使用时,可以将其删除。 数据表要十分慎重,数据表一旦删除,就不可以再恢复。 数据表要十分慎重,数据表一旦删除,就不可以再恢复。在 数据库画板中,选择要删除的表,单击鼠标右键, 数据库画板中,选择要删除的表,单击鼠标右键,选择 Table” 项单击鼠标左键,完成操作。 “Drop Table 项单击鼠标左键,完成操作。
2011-3-5
16
2.4
定义列的扩展属性
列的“属性”对话框不但可以对列进行“扩展属性”的设 列的“属性”对话框不但可以对列进行“扩展属性” 更主要的是能够新建和修改“扩展属性” 置,更主要的是能够新建和修改“扩展属性”的属性值选 在数据库画板中,找到相应的表列,单击鼠标右键, 项。在数据库画板中,找到相应的表列,单击鼠标右键, 弹出菜单,如图2.16 Properties”项单击鼠 弹出菜单,如图2.16 ,选“Properties 项单击鼠 标左键,弹出图2.17 所示“属性”对话框。 标左键,弹出图2.17 所示“属性”对话框。 普通、 Headers”标题 标题、 “属性”对话框有“General”普通、“Headers 标题、 属性”对话框有“General 普通 Display”显示 显示、 Validation”有效性 有效性、 Style” “Display 显示、“Validation 有效性、“Edit Style 编辑风格,五个选项页面,最右边的3个选项页面Display Display、 编辑风格,五个选项页面,最右边的3个选项页面Display、 Validation、 Style即用于定义列的扩展属性 即用于定义列的扩展属性。 Validation、和Edit Style即用于定义列的扩展属性。
2011-3-5
17
2.5 创建索引键及主关键字
定义构成表

的各列的基本属性后,可以说已经建立了表,但 定义构成表的各列的基本属性后,可以说已经建立了表, 是创建表的目的是为了向表中存储数据, 是创建表的目的是为了向表中存储数据,而仅定义各列基本 属性后尚不能向表中输入数据,这是因为在PowerBuilder中 属性后尚不能向表中输入数据,这是因为在 中 要向表输入数据,必须为表定义一个唯一索引或主关键字。 要向表输入数据,必须为表定义一个唯一索引或主关键字。
2.5.1 建立主关键字
主关键字简称为“主键”。主键是表中唯一标识一个记录的 主关键字简称为“主键” 列或列的组合,由一个数据表中的一个或几个列组成。 列或列的组合,由一个数据表中的一个或几个列组成。一个 表只能有一个主键,该主键无名称。主键设置后, 表只能有一个主键,该主键无名称。主键设置后,就不能再 改变。如果对当前的主键不满意,唯一的办法就是删除它, 改变。如果对当前的主键不满意,唯一的办法就是删除它, 然后重建一个新的主键。 然后重建一个新的主键。
2011-3-5
18
2.5.2 建立外部关键字
外部关键字简称外键,外键是与主键相对而言的, 外部关键字简称外键,外键是与主键相对而言的,用来连接 多个表。 多个表。外键是指一个数据表与另一个或几个数据表相联系 的一个键。一个表可以有多个外键, 的一个键。一个表可以有多个外键,且每个外键要有一个名 建立了外键以后, 称。建立了外键以后,就可以通过主键打开与之有外键相连 的所有数据表。 的所有数据表。
2.5.3 建立索引
建立索引只会改变数据表中的逻辑顺序,而不会改变数据表 建立索引只会改变数据表中的逻辑顺序, 中的记录的物理顺序。 中的记录的物理顺序。也可以通过建立唯一索引的方法向数 据表中输入和修改数据。一个表中可有多个索引键, 据表中输入和修改数据。一个表中可有多个索引键,且有索 引名称来区别。 引名称来区别。 创建好主键、索引键和外键后, ObjectLayout子窗口中 子窗口中, 创建好主键、索引键和外键后,在ObjectLayout子窗口中, Integrity菜单项 菜单项, 右击选择 Show Referential Integrity菜单项,可以通过视 图的方式来展示表之间的关系,如图2.21 2.21。 图的方式来展示表之间的关系,如图2.21。
2011-3-5
19
删除主键、 2.5.4 删除主键、外部键与索引键
1.删除主键 单击要删除的主键标志,右击选择“ Key”, (1)单击要删除的主键标志,右击选择“Drop Primary Key , 出现提示信息框 单击提示信息框中的“ 按钮, (2)单击提示信息框中的“是”按

钮,结果就将所选择的主键 删除。 删除。 2.删除外键 单击要删除的外键标志,右击选择“ Key”, (1)单击要删除的外键标志,右击选择“Drop foreign Key , 出现提示信息框 单击提示信息框中的“ 按钮, (2)单击提示信息框中的“是”按钮,结果就将所选择的外键 删除。 删除。 3.删除索引 单击要删除的索引键标志,右击选择“ Index”, (1)单击要删除的索引键标志,右击选择“Drop Index , 出 现提示信息框 单击提示信息框中的“ 按钮, (2)单击提示信息框中的“是”按钮,结果就将所选择的索引 键删除。 键删除。
2011-3-5 20
表中数据的浏览、 2.6 表中数据的浏览、修改和输出
通过上一节对数据表的操作后,可以往表中输入数据, 通过上一节对数据表的操作后,可以往表中输入数据,也可 以查看和修改数据。与此相关的工具栏是数据操作工具栏, 以查看和修改数据。与此相关的工具栏是数据操作工具栏, 如图2.22 2.22。 如图2.22。 在数据画板中,选定表后单击鼠标右键弹出菜单,如图2.23 在数据画板中,选定表后单击鼠标右键弹出菜单,如图2.23
2011-3-5
21
2.7 视图
视图是一种特殊的虚拟表,可以象表一样地访问和使用。 视图是一种特殊的虚拟表,可以象表一样地访问和使用。但 视图并不是真正的表,它没有自己的数据, 视图并不是真正的表,它没有自己的数据,在数据库中并不 存在视图的物理结构
2.7.1 创建视图
打开数据库画板,连接要创建视图的数据库并展开, 打开数据库画板,连接要创建视图的数据库并展开,鼠标右 键单击Views,出现弹出式菜单,选择 键单击 ,出现弹出式菜单,选择New View,将出现标 , 题为“ 的窗口, 题为“Select Table”的窗口,如图 的窗口 如图2.25所示 所示 选择要作 为视图数据源的表或视图单击按钮“open”打开视图画板工作 为视图数据源的表或视图单击按钮“open 打开视图画板工作 区如图2.26所示。 区如图2.26所示。 在视图画板工作区中,选择要在视 在视图画板工作区中, 2.26所示 图中显示的列,并可以在上图底部的Where Where选项卡中设置检索 图中显示的列,并可以在上图底部的Where选项卡中设置检索 条件
2011-3-5 22
2.7.2 删除视图
在数据库画板工作区,选择要删除的视图,单击鼠标右键, 在数据库画板工作区,选择要删除的视图,单击鼠标右键, 出现一个菜单,选择“ View”菜单项 菜单项, 出现一个菜单,选择“Drop View 菜单项,这时将出现一个 题为“PowerBuilder 的窗口 询问是否要删除选定的视图。 的窗口, 题为“PowerBuilder”的窗口,询问是否要删

除选定的视图。
2011-3-5
23
本章小结
本章中,首先介绍数据库接口及与数据库的连接, 本章中,首先介绍数据库接口及与数据库的连接,然后阐述 连接到数据库之后如何操作数据库,这些操作包括创建表、 连接到数据库之后如何操作数据库,这些操作包括创建表、 删除表、维护索引、关键字和创建、删除视图等。 删除表、维护索引、关键字和创建、删除视图等。这些操作 在PowerBuilder 9.0中都被集成到数据库画板中,然后在库 9.0中都被集成到数据库画板中, 中都被集成到数据库画板中 画板调用打开相应的画板或使用其他工具来操作数据库。 画板调用打开相应的画板或使用其他工具来操作数据库。
2011-3-5
24
第3 章
PowerBuilder 编程
3.1 PowerBuilder 编程语言基础 3.2 数据类型与说明 3.3 运算符和表达式 3.4 基本语句 3.5 函数与事件的调用 嵌入式SQL SQL语句 3.6 嵌入式SQL语句 3.7 例外处理语句 本章小结
2011-3-5
25
3.1 PowerBuilder 编程语言基础
PowerScript是PowerBuilder的编程语言,我们编写的事件 是 的编程语言, 的编程语言 处理程序、用户自定义函数等都是使用PowerScript语言编写 处理程序、用户自定义函数等都是使用 语言编写 的.
断行、 3.1.1 断行、续行与多条语句
通常情况下, 的一条语句书写在一行上, 通常情况下,PowerScript的一条语句书写在一行上,语句书 的一条语句书写在一行上 写完毕后, Enter键开始下一条语句 为了阅读方便等原因, 键开始下一条语句。 写完毕后,按Enter键开始下一条语句。为了阅读方便等原因, 需要把一条语句书写在几行上,这时就需要使用续行符。 需要把一条语句书写在几行上,这时就需要使用续行符。 PowerScript的续行符为符号&,它放在一行的末尾指示下一 的续行符为符号& 的续行符为符号 行是当前行的继续。 行是当前行的继续。
2011-3-5
26
3.1.2 注释
注释是添加在程序中的一些说明性文字,PowerBuilder并 注释是添加在程序中的一些说明性文字,PowerBuilder并 不执行任何注释 . 行注释:以双斜线//开始,其后书写注释内容, //开始 1.行注释:以双斜线//开始,其后书写注释内容,到行尾结 束 . 块注释:块注释以符号/*开始,到符号* 结束. /*开始 2.块注释:块注释以符号/*开始,到符号*/结束. 使用工具的方法: 9.0的编程窗口中 的编程窗口中, 3.使用工具的方法:在PowerBuilder 9.0的编程窗口中,单 击工具栏上的Comment 图标, 击工具栏上的Comment 图标,系统自动将光标所在行变为 注释,单击Uncomment Uncomment图标 注释,单击Uncomment图标 ,系统自动将光标所在的注释

行变为语句行。 行变为语句行。
2011-3-5
27
3.1.3 标识符
标识符是程序中用来代表变量、 标号、 函数、 窗口、 控件、 标识符是程序中用来代表变量 、 标号 、 函数 、 窗口 、 控件 、 对象等名称的符号. 对象等名称的符号 .PowerBuilder 中 , 标识符遵从下述规 则: 必须以字母开头; 必须以字母开头; 其余字符可以是字母、 数字及下述的特殊符号: 其余字符可以是字母 、 数字及下述的特殊符号 : 下划线 短横线( 美元符号( 号码符号( (_)、短横线(-)、美元符号($)、号码符号(#)、百 分号( 分号(%); 最长40个字符,且中间不能插入空格; 40个字符 最长40个字符,且中间不能插入空格; 保留字不能用做标识符,因为它们已有特殊的含义; 保留字不能用做标识符,因为它们已有特殊的含义; 标识符不区分字母的大小写。 标识符不区分字母的大小写。
· ·
· · ·
2011-3-5
28
特殊ASCII ASCII码字符 3.1.4 特殊ASCII码字符 空值(NULL) 3.1.5 空值(NULL)
空值是PowerBuilder与数据库交换数据时使用的一种特殊值, 空值是PowerBuilder与数据库交换数据时使用的一种特殊值, PowerBuilder与数据库交换数据时使用的一种特殊值 代表数据未定义、不确定. PowerBuilder的所有数据类型都 代表数据未定义、不确定. PowerBuilder的所有数据类型都 支持空值, PowerBuilder并不将空值作为缺省值 支持空值,但PowerBuilder并不将空值作为缺省值
3.1.6 对象、属性、函数和事件的引用方法 对象、属性、
PowerBuilder应用程序的开发过程实际上就是各种对象的定 PowerBuilder应用程序的开发过程实际上就是各种对象的定 义和使用过程。所有对象都有名称,并通过名称相互区分。 义和使用过程。所有对象都有名称,并通过名称相互区分。 PowerScript中 访问对象的属性、函数、 在 PowerScript 中 , 访问对象的属性 、 函数 、 事件的方法很 简单,就是使用圆点作为标记符。 简单,就是使用圆点作为标记符。 访问对象属性的格式为:对象名. 1.访问对象属性的格式为:对象名.对象属性 程序中访问对象的函数格式为:对象名. [参数 2.程序中访问对象的函数格式为:对象名.函数名 ( [参数 表] )
2011-3-5 29
3.1.7 代词
PowerBuilder 提供了几个代词指代特定的对象,程序中使用 提供了几个代词指代特定的对象, 代词的好处是避免硬代码,做到通用化。 代词的好处是避免硬代码,做到通用化。 代表窗口、 1.This:This代表窗口、用户对象、菜单、应用对象或控件本 代表窗口 用户对象、菜单、 即代表正在为之编写事件处理程序的对象。 身,即代表

正在为之编写事件处理程序的对象。 2.Parent:指当前控件所在的窗口。 :指当前控件所在的窗口。 3.ParentWindow:运行时菜单所在的窗口,该代词只能在菜单 :运行时菜单所在的窗口, 的事件处理程序中使用。 的事件处理程序中使用。 4.Super:用来调用当前子孙对象所对应祖先对象中的事件处理 : 程序或函数。 程序或函数。
2011-3-5
30
3.1.8 保留字
保留字是PowerBuilder 内部使用的一组单词,有着特殊的含 保留字是PowerBuilder 内部使用的一组单词, 不能再把它们用做标识符。 义,不能再把它们用做标识符。 其中,打星号( 的保留字也在作为函数名使用。 其中,打星号(*)的保留字也在作为函数名使用。同普通标 识符一样,保留字也不区分字母的大小写。在Powerbuilder 识符一样,保留字也不区分字母的大小写。 窗口中,保留字一般显示为绿色。 的Script 窗口中,保留字一般显示为绿色。
2011-3-5
31
3.2 数据类型与说明
3.2.1 标准数据类型
PowerBuilder的标准数据类型是在编程过程中经常要用到 的标准数据类型是在编程过程中经常要用到 的数据类型,它们同常见的程序设计语言有非常相似的地方, 的数据类型,它们同常见的程序设计语言有非常相似的地方, 如整型、实型、字符型等。 如整型、实型、字符型等。PoweScript目前支持以下十四 目前支持以下十四 种标准数据类型。 种标准数据类型。
3.2.2 枚举类型
枚举类型是PowerBuilder定义的特殊常量,常用于系统 定义的特殊常量, 枚举类型是 定义的特殊常量 定义函数的参数,也能够用于指定对象或控件的属性。 定义函数的参数,也能够用于指定对象或控件的属性。 中开发人员不能定义自己的枚举类型, 1.在PowerBuilder中开发人员不能定义自己的枚举类型, 中开发人员不能定义自己的枚举类型 而只能按系统要求使用它。 而只能按系统要求使用它。 枚举类型实际上是一组值,每个值都以英文单词开始, 2.枚举类型实际上是一组值,每个值都以英文单词开始,以 感叹号( 结束。 感叹号(!)结束。 程序中可以使用赋值语句给Alignment类型的变量或属性 3.程序中可以使用赋值语句给 类型的变量或属性 赋值。 赋值。
2011-3-5 32
3.2.3 系统对象数据类型
窗口、菜单、各种控件都是系统对象, 在PowerBuilder 中,窗口、菜单、各种控件都是系统对象, 每一种系统对象实际上都是定义在PowerBuilder 内部的一 每一种系统对象实际上都是定义在 种数据类型。一般情况下, 种数据类型。一般情况下,我们不必把这些对象当作数据类 型来考虑,而只需在相应画笔中定义它们

即可。 型来考虑,而只需在相应画笔中定义它们即可。
3.2.4 变量说明
PowerBuilder中,在使用变量之前,都要首先予以说明。 中 在使用变量之前,都要首先予以说明。 变量名必须是标识符。 1.变量名必须是标识符。 说明多个变量时,变量名之间用逗号( 分隔, 2.说明多个变量时,变量名之间用逗号(,)分隔,变量名用 合法的标识符表示。 合法的标识符表示。 3.在说明变量的同时,我们可以同时指定变量的初值。 在说明变量的同时,我们可以同时指定变量的初值。
2011-3-5
33
3.2.5 数组
数组代表一系列具有相同类型的变量,它们共用一个变量名, 数组代表一系列具有相同类型的变量,它们共用一个变量名, 通过下标访问数组中的每个元素。 通过下标访问数组中的每个元素。
3.2.6 变量的作用域
变量作用域共有四种:全局变量 、 实例变量 、 共享变量和局 变量作用域共有四种 : 全局变量、 实例变量、 部变量。 部变量。 优先级顺序:局部变量>共享变量>全局变量> 优先级顺序:局部变量>共享变量>全局变量>实例变量
2011-3-5
34
3.2.7 变量说明
在编程过程中, 有些数据在程序的整个运行过程中均保持 在编程过程中 , 不变, 则这些数据在使用前适宜声明成常量。 不变 , 则这些数据在使用前适宜声明成常量 。 将这些数据 声明成常量可以简化数据的书写, 声明成常量可以简化数据的书写,避免发生不经意的修改 同时,提高了程序代码的可读性和可维护性。 同时,提高了程序代码的可读性和可维护性。 声明常量时需使用关键字CONSTANT,其语法格式为: CONSTANT,其语法格式为 声明常量时需使用关键字CONSTANT,其语法格式为: CONSTANT datetype constname=value
2011-3-5
35
3.3 运算符和表达式
操作符代表了符号化的运算,PowerScript利用操作符构 操作符代表了符号化的运算,PowerScript利用操作符构 成表达式,完成一定的运算。PowerScript支持的操作符可 成表达式,完成一定的运算。PowerScript支持的操作符可 分为四种类型:算术操作符、关系操作符、逻辑操作符、 分为四种类型:算术操作符、关系操作符、逻辑操作符、 连接操作符 。
3.3.1 算术操作符
算术操作符: 负号) 算术操作符: +(加)、-(减)、-(负号)、*(乘)、/ ^(乘方 乘方) (除)、^(乘方) 扩展算术操作符: ++、--、+=、 /=、 扩展算术操作符: ++、--、+=、-=、*=、/=、^= 在使用减号( 负号( --)运算符时, 在使用减号(-)、负号(-)、减1(--)运算符时,必须 在这些运算符的两边都加上个空格。 在这些运算符的两边都加上个空格


3.3.2 关系操作符
关系运算符有6 >=、 <=、 <>。 关系运算符有6个:>、 >=、<、<=、=、<>。
2011-3-5
36
3.3.3 逻辑操作符
逻辑运算符有3 逻辑运算符有3个:NOT、AND、OR NOT、AND、
3.3.4 连接操作符
符号“ ,用于把两个String型的变量内容连接在一起, String型的变量内容连接在一起 符号“+”,用于把两个String型的变量内容连接在一起,形 成新的字符串. 成新的字符串.
3.3.5 操作符的优先级
在表达式中,运算按操作符的特定次序进行, 在表达式中,运算按操作符的特定次序进行,这一次序就 是操作符的优先级。其中,优先数越小,优先级越高。 是操作符的优先级。其中,优先数越小,优先级越高。
2011-3-5
37
3.4 基本语句
3.4.1 赋值语句
赋值语句用于给变量、 对象属性赋值, 赋值语句用于给变量 、 对象属性赋值 , 这是应用程序中使用 最频繁的语句,其语法格式为: 最频繁的语句,其语法格式为: variablename = expression 其中: 其中: 是变量名或对象属性; (1)variablename是变量名或对象属性; 是变量名或对象属性 (2)expression是表达式,其数据类型应该与variablename 是表达式,其数据类型应该与 是表达式 的数据类型兼容。 的数据类型兼容。
2011-3-5
38
3.4.2 条件语句
IF语句有两种形式: IF语句有两种形式: 语句有两种形式 单行IF THEN语句 1.单行IF …… THEN语句 语句1 语句2 IF 逻辑表达式 THEN 语句1 [ELSE 语句2] 多行IF THEN语句 2.多行IF …… THEN语句 IF 逻 辑 表 达 式 1 THEN 语 句 1 [ ELSEIF 逻 辑 表 达 式 2 语句2 语句n] THEN 语句2 . . .] [ ELSE 语句n] END IF n+1 语句 n+1
2011-3-5
39
CASE语句 3.CHOOSE CASE语句 根据测试表达式的值选择不同的操作,其语法格式为: 根据测试表达式的值选择不同的操作,其语法格式为: CHOOSE CASE 测试表达式 CASE 判断表达式 执行语句块 [CASE 判断表达式 语句块 . . . CASE 判断表达式 语句块] 语句块] [CASE ELSE 语句块] 语句块] END CHOOSE
2011-3-5
40
3.4.3 循环语句
PowerScript的循环语句有三种形式 PowerScript的循环语句有三种形式 LOOP、 NEXT、 EXIT和 DO …LOOP、FOR …NEXT、GOTO,将前两种形式与EXIT和 LOOP NEXT GOTO,将前两种形式与EXIT CONTINUE语句配合使用 CONTINUE语句配合使用 DO… LOOP循环 LOOP循环 1.DO DO… LOOP有四种形式 分别为: 有四种形式, DO… LOOP有四种形式,分别为: · DO UNTIL condition … LOOP · DO WHILE condition … LOOP (类似c) 类似c) · DO …LOOP UNTIL condition LOOP (类似 类似c) DO …LOOP WHILE condition (类似c) LOOP
2011-3-5
41
NEXT循环 2.FOR NEXT循环 NEXT是个循环次数确

定的循环结构 是个循环次数确定的循环结构, FOR … NEXT是个循环次数确定的循环结构,它使循环体内的 语句执行规定的次数,其语法结构为: 语句执行规定的次数,其语法结构为: FOR varname = start TO end [STEP increment] Statementblock NEXT 含有EXIT CONTINUE的循环 EXIT和 3.含有EXIT和CONTINUE的循环 EXIT(退出循环) (1)EXIT(退出循环) CONTINUE(继续循环) (2)CONTINUE(继续循环)
2011-3-5
42
3.4.4 其他常用控制语句
PowerScript中的CALL语句、RETURN语句以及HALT语句使用 PowerScript中的CALL语句、RETURN语句以及HALT语句使用 中的CALL语句 语句以及HALT 得也较为广泛。下面介绍它们的用法。 得也较为广泛。下面介绍它们的用法。 CALL语句 1.CALL语句 CALL语句用于在派生对象的事件处理程序中调用祖先对象的 CALL语句用于在派生对象的事件处理程序中调用祖先对象的 事件和祖先对象中控件的事件。 事件和祖先对象中控件的事件。 RETURN语句 2.RETURN语句 在编写事件处理程序或函数时,使用RETURN RETURN语句返回控制给 在编写事件处理程序或函数时,使用RETURN语句返回控制给 用户或调用函数的地方。 用户或调用函数的地方。 HALT语句 3.HALT语句 当希望终止应用程序的运行时,使用HALT语句,其语法为: HALT语句 当希望终止应用程序的运行时,使用HALT语句,其语法为: HALT {CLOSE}
2011-3-5
43
3.5 函数与事件的调用
3.5.1 常用函数
PowerScript函数分为三类:系统函数、对象函数、 PowerScript函数分为三类:系统函数、对象函数、数据窗口 函数分为三类 画笔函数。 画笔函数。 消息函数MessageBox( 常用于向用户显示出错、 1.消息函数MessageBox( ):常用于向用户显示出错、警告及其 它重要信息, 它重要信息,并且在开发过程中常用它显示程序状态和重要 变量的取值。 变量的取值。 日期函数:得到指定日期前多少天或后多少天的日期。 2.日期函数:得到指定日期前多少天或后多少天的日期。 时间函数:得到指定时间前多少秒或后多少秒的时间, 3.时间函数:得到指定时间前多少秒或后多少秒的时间,采用 24小时制 小时制。 24小时制。 计算函数:计算绝对值。 4.计算函数:计算绝对值。 字符串函数:得到字符串左部指定个数的字符。 5.字符串函数:得到字符串左部指定个数的字符。 6.数据类型转换函数:把日期和时间值组合成DateTime类型的 数据类型转换函数:把日期和时间值组合成DateTime类型的 DateTime 值。
2011-3-5 44
3.5.2 事件触发和邮寄函数
当我们为某个对象的某个事件编写了事件处理程序后, 当我们为某个对象的某个事件编写了事件处理程序后,

在其 它地方就可以调用该事件处理程序, 它地方就可以调用该事件处理程序,完成这项工作的一个简 便方法是使用对象函数TriggerEvent )或 )。 便方法是使用对象函数TriggerEvent ( )或PostEvent ( )。 1.TriggerEvent ( )函数 TriggerEvent函数能够触发任何对象的事件 函数能够触发任何对象的事件, TriggerEvent函数能够触发任何对象的事件,并立即执行该事 件的事件处理程序,其语法格式为: 件的事件处理程序,其语法格式为: objectname.TriggerEvent ( event {,word, long} 2.PostEvent ( )函数 PostEvent函数的语法格式为 函数的语法格式为: PostEvent函数的语法格式为: objectname.PostEvent ( event {,word, long}
2011-3-5
45
嵌入式SQL SQL语句 3.6 嵌入式SQL语句
3.6.1 事务管理语句
简 要 介 绍 用 于 事 物 对 象 管 理 的 四 条 语 句 : CONNECT 语 句 、 DISCONNECT语句 COMMIT语句以及ROLLBACK语句 语句、 语句以及ROLLBACK语句。 DISCONNECT语句、COMMIT语句以及ROLLBACK语句。 建立数据库连接语句CONNECT 1.建立数据库连接语句CONNECT 断开数据库连接语句DISCONNECT 2.断开数据库连接语句DISCONNECT 3.提交事务语句COMMIT 提交事务语句COMMIT 4.回滚事务语句ROLLBACK 回滚事务语句ROLLBACK 事务对象是个不可见对象,它不需要在某个画笔中创建, 事务对象是个不可见对象,它不需要在某个画笔中创建,也 不能出现在屏幕上,但它却是PowerBuilder PowerBuilder最重要的对象之 不能出现在屏幕上,但它却是PowerBuilder最重要的对象之 一。 事物对象的作用 事物对象的属性
2011-3-5
46
基本SQL SQL语句 3.6.2 基本SQL语句
这里所说的基本SQL语句是指用来对数据库中的数据表进行 语句是指用来对数据库中的数据表进行 这里所说的基本 查询(检索记录)和操纵(插入、删除、修改) 语句。 查询(检索记录)和操纵(插入、删除、修改)的SQL语句。 语句 下面将要介绍的这些语句有:SELECT语句、INSERT语句、 语句、 语句、 下面将要介绍的这些语句有 语句 语句 DELETE语句以及 语句以及UPDATE语句。 语句。 语句以及 语句 1.单行检索语句 .单行检索语句SELECT 2.插入语句 .插入语句INSERT 3.删除语句 .删除语句DELETE 4.修改语句 .修改语句UPDATE 5.检查SQL语句的执行情况 .检查 语句的执行情况
2011-3-5
47
3.6.3游标的使用
游标(Cursor) 是为了解决SQL SQL语句的查询结果集为多条记录而 游标(Cursor) 是为了解决SQL语句的查询结果集为多条记录而 一般程序设计语言一次只能处理一条记录的矛盾。 一般程序设计语言一次只能处理一条记录的矛盾。使用游标 的基本步骤是:声明游标、打开游标、读取数据、关闭

游标。 的基本步骤是:声明游标、打开游标、读取数据、关闭游标。 这四个步骤所对应的语句分别为:DECLARE语句 OPEN语句 语句、 语句、 这四个步骤所对应的语句分别为:DECLARE语句、OPEN语句、 FETCH语句和CLOSE语句 语句和CLOSE语句。 FETCH语句和CLOSE语句。 定义游标语句DECLARE 1.定义游标语句DECLARE 2.打开游标语句OPEN 打开游标语句OPEN 取数据语句FETCH 3.取数据语句FETCH 4.删除游标数据 5.更新游标数据 6.关闭游标
2011-3-5
48
3.7 例外处理语句
3.7.1 PowerBuilder中的例外处理 中的例外处理
例外是指在程序运行过程中所发生的异常事件。例如, 例外是指在程序运行过程中所发生的异常事件。例如,除数 为零溢出、数值超出、数组越界、找不到指定文件等。 为零溢出、数值超出、数组越界、找不到指定文件等。这些 事件的发生将中断程序的正常运行,影响程序的使用。 事件的发生将中断程序的正常运行,影响程序的使用。为提 高程序的运行效率,必须尽可能考虑到可能发生的各种异常 高程序的运行效率, 事件,并在相应程序中做出相应的处理。 事件,并在相应程序中做出相应的处理。PowerBuilder 9.0 中的例外处理方法与Java语言的例外处理方法十分相似。 中的例外处理方法与Java语言的例外处理方法十分相似。 Java语言的例外处理方法十分相似 需指出的是,虽然PowerBuilder PowerBuilder现在提供了新的例外处理机 需指出的是,虽然PowerBuilder现在提供了新的例外处理机 用户仍然可以使用Error ExternalException等事件进 Error、 制,用户仍然可以使用Error、ExternalException等事件进 行例外处理。但是, 行例外处理。但是,通过给这些事件编写处理程序的方式将 无法得到PowerBuilder新的例外处理机制所带来的优越性。 PowerBuilder新的例外处理机制所带来的优越性 无法得到PowerBuilder新的例外处理机制所带来的优越性。
2011-3-5
49
3.7.2 例外处理语句
在PowerBuilder 9.0中,例外处理语句的形式为 中 例外处理语句的形式为 TRY…CATCH…FINALLY…END TRY,用于指定要捕获里外 用于指定要捕获里外 的代码段,给出发生例外时处理动作,并在FINALLY子句中 的代码段,给出发生例外时处理动作,并在 子句中 执行公共的处理部分。 执行公共的处理部分。 要在程序中进行例外处理,就必须在代码中包含TRY语句块. TRY语句块 要在程序中进行例外处理,就必须在代码中包含TRY语句块. 同时,该语句块中还必须包含CATCH子句和FINALLY子句。 同时,该语句块中还必须包含CATCH子句和FINALLY子句。 CATCH子句和FINALLY子句
2011-3-5
50
本章小结
本章中,首先阐述 编

程语言, 本章中,首先阐述PowerBuilder 编程语言,包括 数据类型与变量、说明运算符和表达式以及基本语句、 数据类型与变量、说明运算符和表达式以及基本语句、 函数与事件的调用等;其次讲述了嵌入式SQL语句, 语句, 函数与事件的调用等;其次讲述了嵌入式 语句 包括事务对象及其应用,建立和断开数据库连接、 包括事务对象及其应用,建立和断开数据库连接、提 交与回滚事务, 语句和检查SQL语句的执行情 交与回滚事务,SQL语句和检查 语句和检查 语句的执行情 最后讲解PowerBuilder中的例外处理语句 本章 中的例外处理语句, 况;最后讲解 中的例外处理语句 出了大量的例子,希望大家反复练习, 出了大量的例子,希望大家反复练习,它是 Powerbuilder编程的基础知识,是学习 编程的基础知识, 编程的基础知识 Powerbuilder编程基本技巧的良好开始。 编程基本技巧的良好开始。 编程基本技巧的良好开始
2011-3-5
51
第4章 窗口对象
4.1 窗口概述 4.2 窗口类型 4.3 创建窗口 4.4 窗口属性 4.5 保存、预览、运行窗口 保存、预览、 4.6 窗口事件 4.7 窗口函数 4.8 创建窗口实例 本章小结
2011-3-5
52
4.1 窗口概述
窗口是用户界面的最基本要素,是应用程序的界面,应用程序通过窗 窗口是用户界面的最基本要素,是应用程序的界面, 口显示运行状态和执行结果。 口显示运行状态和执行结果。 ? 窗口由4 部分组成:属性、事件、函数和控件。窗口的属性决定了窗 窗口由4部分组成:属性、事件、函数和控件。 口的外观和行为,它的事件说明了应用程序能够响应用户的操作类型, 口的外观和行为,它的事件说明了应用程序能够响应用户的操作类型, 它的函数为程序控制窗口提供了简洁而安全的手段。 它的函数为程序控制窗口提供了简洁而安全的手段。 ? 窗口是应用程序图形界面的基础,它由属性、事件、函数、控件组成, 窗口是应用程序图形界面的基础,它由属性、事件、函数、控件组成, 用户通过窗口及窗口上的控件和菜单表达自己的操作意图。 用户通过窗口及窗口上的控件和菜单表达自己的操作意图。 ? 窗口还是其他PowerBuilder控件的物理载体,PowerBuilder中的各种 窗口还是其他PowerBuilder控件的物理载体,PowerBuilder中的各种 PowerBuilder控件的物理载体 控件均需要放置到窗口才能发挥作用。 控件均需要放置到窗口才能发挥作用。 ? 除此以外窗口是用户同应用程序之间的交互界面。窗口可用来显示信 除此以外窗口是用户同应用程序之间的交互界面。 请求、用户输入和响应用户的鼠标或键盘动作。 息、请求、用户输入和响

应用户的鼠标或键盘动作。
2011-3-5
53
4.2 窗口类型
1.主窗口(Main Window ) 主窗口( 主窗口是独立的窗口,它不依赖于其它任何窗口而独立存在, 主窗口是独立的窗口,它不依赖于其它任何窗口而独立存在, 这种类型的窗口既能够覆盖其它窗口,也能够被其它窗口覆盖。 这种类型的窗口既能够覆盖其它窗口,也能够被其它窗口覆盖。 弹出式窗口( Window) 2.弹出式窗口(Popup Window) 弹出式窗口通常由另一个窗口打开, 弹出式窗口通常由另一个窗口打开,该窗口一般情况下成为弹 出式窗口的父窗口。弹出式窗口显示在父窗口前面, 出式窗口的父窗口。弹出式窗口显示在父窗口前面,它既可以移出父 窗口,也能够覆盖父窗口,但不能被父窗口覆盖,当父窗口最小化时, 窗口,也能够覆盖父窗口,但不能被父窗口覆盖,当父窗口最小化时, 弹出式窗口随之隐藏,父窗口被关闭时,弹出式窗口也随之关闭。 弹出式窗口随之隐藏,父窗口被关闭时,弹出式窗口也随之关闭。 子窗口( Window) 3.子窗口(Child Window) 子窗口从属于另一个窗口, 子窗口从属于另一个窗口,它总是在主窗口或弹出式窗口中打 子窗口可以在父窗口内部移动,但不能移出父窗口。 开。子窗口可以在父窗口内部移动,但不能移出父窗口。移动父窗口 子窗口随之移动,关闭父窗口时,子窗口也随之被关闭。 时,子窗口随之移动,关闭父窗口时,子窗口也随之被关闭。 子窗口的位置总是相对于父窗口,而不是相对于屏幕。 注:子窗口的位置总是相对于父窗口,而不是相对于屏幕。 响应窗口( Window) 4.响应窗口(Response Window) 响应窗口不能被最大化、最小化,但可以带有控制菜单。 响应窗口不能被最大化、最小化,但可以带有控制菜单。 MDI框架窗口 框架窗口( Frame)和带微帮助的MDI框架窗口( MDI框架窗口 5.MDI框架窗口(MDI Frame)和带微帮助的MDI框架窗口(MDI Microhelp) Frame With Microhelp) 两者的区别在于,后一种框架窗口在底部多了个状态栏, 两者的区别在于,后一种框架窗口在底部多了个状态栏,用 于显示应用程序简短的当前信息。典型的MDI框架窗口由标题、菜单、 框架窗口由标题、 于显示应用程序简短的当前信息。典型的 框架窗口由标题 菜单、 工具栏、客户区、状态栏组成。 工具栏、客户区、状态栏组成。 54
2011-3-5
4.3 创建窗口
单击“File|New”菜单, 单击“ 菜单, 菜单 在出现的“ 在出现的“New”窗口中 窗口中 选择“ 选择“PB Object”选项 选项 页中的Window对象图标, 对象图标, 页中的 对象图标 在PowerBuilder中将

显 中将显 示一个窗口画板, 示一个窗口画板,其中 有一个表示新建窗口的 网点状矩形,如图所示 所示。 网点状矩形,如图所示。 ? 窗口画板是由布局视图 区、脚本编辑区、控件 脚本编辑区、 列表区、事件列表区、 列表区、事件列表区、 结构列表区、结构定义 结构列表区、 函数列表区、 区、函数列表区、非可 视对象列表区等组成。 视对象列表区等组成。
2011-3-5 55
4.4 窗口属性
· 窗口属性设置对话框有
4 个标签分别对应 个 个标签分别对应4个 属性选项页, 属性选项页,通过单击 标签选择所需的属性, 标签选择所需的属性, 如图所示。 如图所示。 General选项页中设置 General选项页中设置 一般属性 Scroll选项页设置窗口 Scroll选项页设置窗口 的滚动方式。 的滚动方式。 ToolBar选项页设置窗 ToolBar选项页设置窗 口中工具栏的初始位置。 口中工具栏的初始位置。 Other选项页设置窗口 Other选项页设置窗口 在屏幕中的位置和鼠标 的现状。 的现状。
2011-3-5 56
窗口菜单名称 窗口标题 窗口标记
菜单浏览按钮
· · · ·
窗口类型
窗口背景颜色
窗口初始状态
MDI子窗口颜色
系统提供的窗 口图标的下拉 选择按钮
窗口图标
用户自定义的 窗口图标的浏 览按钮
4.5 保存、预览、运行窗口 保存、预览、
1.保存窗口 单击PainterBar1工具栏上的“Save”图标。 工具栏上的“ 图标。 单击 工具栏上的 图标 2.预览窗口 单击PainterBar1工具栏上的 “ Preview” 工具栏上的“ 单击 工具栏上的 图标。 图标。 3.运行窗口 单击PowerBar1工具栏上的“Run”图标。 工具栏上的“ 图标。 单击 工具栏上的 图标
2011-3-5
57
4.6 窗口事件
窗口对象中最常用的事件是Open、Close、CloseQuery 、 窗口对象中最常用的事件是 、 、Key、DragDrop、Resize等。 、 、 等
1.打开窗口的Open事件 .打开窗口的 事件 2.激活窗口的 .激活窗口的Active事件 事件 3.单击窗口的 .单击窗口的Clicked事件 事件 4.关闭窗口的 .关闭窗口的Close事件 事件 5.关闭窗口时的 .关闭窗口时的CloseQuery事件 事件 6.按键时的 .按键时的Key事件 事件 7.窗口右击时的 .窗口右击时的RButtonDown事件 事件
2011-3-5
58
4.7 窗口函数
打开窗口函数 打开窗口函数有多种语法格式。 打开窗口函数有多种语法格式。Open ( windowvar {, parent } ) 其中:参数windowvar是要显示窗口的名称;参数parent可以省略, windowvar是要显示窗口的名称 parent可以省略 其中:参数windowvar是要显示窗口的名称;参数parent可以省略, 未省略时,由该参数指定父窗口的名称

,此时, 未省略时,由该参数指定父窗口的名称,此时,被打开窗口作为子窗口 形式出现。 形式出现。 )函数返回整型值 表示打开窗口成功,返回整型值函数返回整型值1 Open( )函数返回整型值1表示打开窗口成功,返回整型值-1表示 打开失败。 打开失败。 · 关闭窗口函数 关 闭 窗 口 的 工 作 由 函 数 Close ( ) 实 现 , 其 语 法 格 式 为 : Close ( windowname ) 其中:windowname是要关闭窗口的名称 该函数返回整型值1 是要关闭窗口的名称。 其中 : windowname 是要关闭窗口的名称 。 该函数返回整型值 1 表 示关闭窗口成功,否则返回值为示关闭窗口成功,否则返回值为-1。 · 显示窗口函数 将 窗 口 的 Visible 属 性 置 为 TRUE 或 用 语 句 , 其 格 式 为 : Windowname. Windowname.Show() · 隐藏窗口函数 将 窗 口 的 Visible 属 性 置 为 FALSE 或 使 用 语 句 , 语 句 格 式 为 : Windowname. Windowname.Hide() · 移动窗口函数 将窗口的位置改变, 式为: 将窗口的位置改变,语句格 式为:Windowname.Move(x,y)
·
2011-3-5
59
4.8 创建窗口实例
·
创建窗口的步骤如下: 创建窗口的步骤如下: 第一步:新建工作空间,名称为: 第一步:新建工作空间,名称为:pbwork 第二步:新建应用程序,名称为: 第二步:新建应用程序,名称为:pbapp Application的Open事件中添加代码 open(w_main)。 事件中添加代码: 在Application的Open事件中添加代码:open(w_main)。 第三步:在应用程序中,建立主窗口名称为:w_main,如图所示。 第三步:在应用程序中,建立主窗口名称为:w_main,如图所示。
·
在w_main的open事件中添加代码:open(w_login) w_main的open事件中添加代码: 事件中添加代码 最后单击保存图标,保存窗口,在保存对话框中输入窗口名“w_main”。 最后单击保存图标,保存窗口,在保存对话框中输入窗口名“w_main 。
2011-3-5
60
本章小结
本章中,将叙述窗口对象的创建、修改、属性设置、 本章中,将叙述窗口对象的创建、修改、属性设置、事 件及其事件处理程序的编写, 件及其事件处理程序的编写,为以后编写程序打下基础
2011-3-5
61
第5章 窗口控件 章
5.1 为窗口添加控件 5.2 窗口控件的操作技术 5.3 控件属性、事件和函数 控件属性、 5.4 几个重要的简单控件的应用 5.5 一个高级控件--树形视图(TreeView) 一个高级控件 树形视图( ) 树形视图 5.6 本章实例 本章小结
2011-3-5
62
5.1 为窗口添加控件
· ·
控件概述
选择某个控件图标时的两条途径
如果所需图标已经出现在控件选择图标上,那么直接单击该图标; 如果所需图标已

经出现在控件选择图标上,那么直接单击该图标;如果所需图标 没有出现在控件选择图标上,那么单击下箭头,然后单击图标列表中所需图标, 没有出现在控件选择图标上 , 那么单击下箭头 , 然后单击图标列表中所需图标, 被单 击的图标出现在控件选择图标上,成为新的缺省图标。 击的图标出现在控件选择图标上,成为新的缺省图标。
·
将控件放置到窗口上的操作步骤
1、用窗口画板打开欲放置控件的窗口; 、用窗口画板打开欲放置控件的窗口; 2、单击控件列表图标上的三角符号 , 打开控件列表, 通过单击选择要放置的控 、 单击控件列表图标上的三角符号,打开控件列表, 如果要放置的控件刚好出现在控件列表图标上,那么直接单击该控件图标; 件。如果要放置的控件刚好出现在控件列表图标上,那么直接单击该控件图标; 将鼠标指针移动到窗口上要放置所选控件的位置,单击鼠标左键, 3、将鼠标指针移动到窗口上要放置所选控件的位置,单击鼠标左键,所选控件 即被放置到窗口上,控件大小使用系统的缺省设置。 即被放置到窗口上,控件大小使用系统的缺省设置。
· ·
2011-3-5
控件名的缺省前缀 对控件可进行的操作
将各种控件放入窗口后,可对控件进行如下操作: 将各种控件放入窗口后,可对控件进行如下操作: 选择控件、 移动控件、 改变控件大小、 删除控件、对齐控件、 Tab次序 选择控件、 移动控件、 改变控件大小、 删除控件、对齐控件、 Tab次序
63
5.2 窗口控件的操作技术
·
选择控件 1.选中单个控件 . 2.选择相邻的多个控件 . 3.选中不相邻的多个控件 .
·
移动控件 1.用鼠标移动控件的方法为 2.用键盘移动控件的方法为 3.改变控件大小 4. 删除控件 5.对齐控件 6.复制与粘贴 焦点与Tab Tab次序 7.焦点与Tab次序
64
2011-3-5
5.3 控件属性、事件和函数 控件属性、 · ·
设置控件属性方法
1.使用Visible属性 使用 属性 使用Enabled属性 2.使用 属性
控件事件及其脚本
不同控件类别所具有的事件各不相同,但多数控件都有单击、双击 拖 不同控件类别所具有的事件各不相同,但多数控件都有单击、 放 等 响 应 用 户 操 作 的 事 件 , 也 有 构 造 ( Constructor ) 、 析 构 Destructor) 计时等系统事件。 (Destructor)、计时等系统事件。 脚本是事件的实现部分,可通过脚本视图区创建。 脚本是事件的实现部分,可通过脚本视图区创建。
·
控件函数
常用的控件函数有Hide()、 Show()、Move() 、Drag 常用的控件函数有 ( ()、

相关主题
文本预览
相关文档 最新文档