数据库第16章 数据窗口控件.doc

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库第16章 数据窗口控件

数据窗口控件 数据窗口控件是应用程序在窗口中展示数据窗口对象的唯一途径,数据窗口控件与数据窗口对象的结合构成了应用程序访问和操作数据库数据的主要手段。两者的结合在提供强大功能的同时,不可避免地也带来了非常大的复杂性。 与其它PowerBuilder对象一样,数据窗口控件也有一组属性、事件和函数,不过它们的数量相当庞大,掌握起来有一定的难度。数据窗口对象常用属性可以通过数据窗口控件的对象函数来访问,使用属性表达式,应用程序几乎可以操纵数据窗口的所有属性。 数据窗口控件与其它控件(比如单选钮、复选框、单行/多行编辑框、各种列表框等)一样,是附属于窗口的一个对象,它像座桥梁一样把窗口和数据窗口对象联系起来。通过数据窗口控件,程序能够显示、修改、控制数据窗口对象,并且响应用户的操作。数据窗口控件功能十分强大,具有众多的事件、属性和函数。数据窗口的属性、事件和函数是灵活运用数据窗口的基础,我们在这一章的内容中主要学习数据窗口控件使用方法(事件、属性、函数)。 一、运用数据窗口的一般步骤 无论用PowerBuilder开发何种数据库应用程序,在应用程序中运用数据窗口的一般方法都是相似的,基本步骤为: 使用数据窗口画笔创建数据窗口对象; 在窗口上放置数据窗口控件; 通过属性设置或编码将数据窗口控件与数据窗口对象联系起来;dw_1.dataobject=”d_student” 设置数据窗口控件的属性,以控制它的外观和行为; 将数据窗口控件与事务对象联系起来(使用数据窗口控件的对象函数SetTransObject ( )或SetTrans ( ));即将数据窗口和数据库连接起来。 从数据库中读数据:使用数据窗口控件的对象函数Retrieve ()把数据库中的数据装入数据窗口中; 编写某些数据窗口控件事件的事件处理程序,响应用户的操作; 9. 保存数据:需要时使用数据窗口控件的对象函数Update ()保存用户对数据的修改。 16.1 数据窗口中操纵数据 当使用数据窗口控件的Retrieve()函数从数据库中提取数据后,数据被存入了数据窗口的缓冲区中,程序对数据窗口中数据的操作均在缓冲区中完成。用户在向数据窗口中输入数据时,他并没有直接把数据输入到数据窗口的缓冲区中,而是把数据输入到悬浮在数据窗口当前单元上面的编辑控件中,当用户移动了输入焦点或代码中使用AcceptText ()函数操作之后,系统验证输入数据的有效性,通过有效性验证的数据才被放置到数据窗口控件的缓冲区中。下面介绍数据窗口控件缓冲区和编辑控件的相关知识。 DATAWINDOW的四个缓站区 在PowerBuilder中,DataWindow是用户前端用来存储、操纵数据的对象。在每一个DataWindow对象中有4个数据缓冲区,用来存储查询到的数据。用户在DataWindow中对数据处理系统内部的操作实际上都是将数据在这几个缓冲区中进行的修改和移动,最后在用户提交数据库时,系统根据这四个缓冲区中的信息形成SQL的IN-SERT,UPDATE,DELETE等语句。这四个缓冲区是: Primary Buffer 这个缓冲区是存放填充窗口中DataWindow控件中数据的,调用DataWindow的Retrieve()函数和InsertRow()函数可以将数据填入这个缓冲区中。当使用有关DataWindow删除和过滤函数时,相应记录将从这一缓冲区中删除。而在执行DataWindow的Update()函数时,PowerBuilder将查看这一缓冲区中的记录,以形成SQL INSERT和UPDATE语句。 Delete Buffer 这个缓冲区保存的是从中删除的记录,执行Update()函数时,系统根据这一缓冲区的记录形成DELETE语句。 Filter Buffer 这个缓冲区存储的是。 Original Buffer 这一缓冲区存储的是DataWindow执行retrieve()函数时得到的全部记录。当数据库时,根据生成的UPDATE语句和根据生成的DELETE语句都要依据这一缓冲区来构造这些SQL语句中的Where子句。 由PowerBuilder内部维护,Power-Builder所提供的任何函数都无法改变它的值。 二、编辑控件 使用数据窗口控件时,需要理解的最重要概念之一是编辑控件(EditControl)。请注意,这里讲述的编辑控件不是放置在窗口上的编辑框。当数据窗口中的列可以编辑时,系统自动创建一个编辑控件“漂浮”在得到输入焦点的可编辑项上,这个编辑控件没有边框,从外观上我们只能看到插入指针在闪动。当用户按Tab键或通过单击改变输入焦点时,编辑控件随之移动到得到焦点的项上,同时编辑控件根据该项的设置及相应列的编辑风格调整自己的大小和显示。 因此,本质上用户是在编辑控件中

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档