中国计算机报1999年第3期

数据窗口连动

孙 丰

  用PowerBuilder开发数据库应用程序时,一般会用到数据窗口DataWindow控件,它用来显示数据表字段中的数据记录,当数据表中的字段较多时,需要在数据窗口中加入水平滚动条才能看到所有的字段。在一个数据窗口中进行操作往往看到一个字段,却看不到相距较远的另一个字段,顾此失彼。当数据窗口中数据记录较多时,这一问题更为突出。

  在一个数据窗口中解决这个问题可利用水平分割的办法,即在窗口控件上放一个数据窗口控件并在属性中关联上相应的数据窗口,再在数据窗口控件属性中选上“H Split Scrolling”核准框。程序运行后,可在数据窗口中选择分割线,这时数据窗口分成两部分,每部分都包括所有数据表字段,都有水平滚动条。用户可在一侧设置几个主要字段,在另一侧进行字段的水平滚动,这样就可以彼此兼顾了。因为数据窗口的两部分都包括所有字段,所以问题解决的不是很完美。

  这里介绍一下在两个数据窗口中实现连动的方法,其中一个数据窗口用来显示一条记录的主要几个字段,另一个数据窗口带水平滚动条用来显示同一条记录剩余的字段,当用户拉动数据窗口的垂直滚动条时,两个数据窗口中的同一条记录是连动的。具体方法如下:

  在窗口控件中定义两个左右相邻上下对齐的数据窗口控件dw_1和dw_2。dw_1在左边与数据表的几个主要字段进行关联,不带水平和垂直滚动条,显示关联的全部字段;dw_2在右边与数据表的剩余字段进行关联,带水平和垂直滚动条,通过水平滚动条来显示关联的全部字段。当拉动右边的垂直滚动条时,要实现两个数据窗口的连动,需要在dw_2的ScrollVertical事件中加入一条语句:

  dw_1.Object.DataWindow.VerticalScrollPosition=dw_2.Object.DataWindow.VerticalScrollPosition。

  这样就可实现同一条数据记录在两个数据窗口中的连动了。

 back.gif (1185 字节)