理论教育 页眉与页脚区域的设置方法

页眉与页脚区域的设置方法

时间:2023-05-31 理论教育 版权反馈
【摘要】:表 6-33要定义元素的宽度和对齐方式,现在使用的相应类的方法,见表6-34表 6-346.2.5.3 设计对象实例1)table-type布局ALV输出的页眉下面的示例演示如何在Table-type布局的ALV输出的页眉中插入一个设计对象2)Row-Type布局ALV输出的页脚下面的例子演示了如何在ALV输出的页脚中显示一个文本类型的元素

页眉与页脚区域的设置方法

用户可以在ALV输出的上方和下方使用各种元素设计页眉与页脚。可以使用设计对象进行相关操作。

程序员可以使用许多不同的类型的元素,以形成一个设计对象,然后显示在想要的位置

注:所有设计对象的类和方法在系统内的SALV_FORM_ELEM包中。

(1)元素类型和布局形式

可以使用下列类型的元素来设计对象:

● Header元素(头信息)。

● 带或不带标签的文本元素(文本标签)。

● 动作信息。

注:这些元素只在外观上有所不同。各类型元素没有相关功能连接。

这些元素可以排列在设计对象中。可以选择的布局表单有以下3种:

● 单元素:生成一个元素,并将其显示在所需的位置。

● Row-type布局:排列尽可能多的元素,将其一前一后排成一排。

● Table-type布局:安排尽可能多的元素,将其排列成行和列。

注:可以将二者结合起来布局表单,如可以将行插入到一个表中。

(2)Context节点TOP_OF_LIST和END_OF_LIST

ALV组件提供了两个Context节点TOP_OF_LIST和END_OF_LIST。每个节点包含一个CONTENT属性。这些Context节点用于ALV输出中保存页眉和页脚区域的设计对象的数据。

可以定义Context映射到应用程序一个相同的名称Context节点上,并将该Context设置到设计对象的属性。

(3)设置设计对象(Design Object)

设置设计对象的页眉和页脚区域的步骤如下:

1)映射ALV组件的Context节点TOP_OF_LIST和END_OF_LIST到应用程序Context中

2)创建一个设计对象。要做到这一点,可以使用row-type或table-type布局。将所需的元素插入到这个布局中。

3)如有需要,将元素进行各种设置(设计对象设置)。

4)将设计对象设置为Context节点的CONTENT属性。

(4)设计对象的显示和隐藏

默认情况下,页眉区设计对象和页脚区的设计对象都显示出来。

隐藏和显示这两种设计对象,可以使用接口IF_SALV_WD_TABLE_SETTINGS(实现类的CL_SALV_WD_CONFIG_TABLE)的方法,见表6-24。

6-24

978-7-111-54749-5-Chapter06-25.jpg

6.2.5.1创建设计对象和元素

(1)创建一个设计对象

首先,确定设计对象的基本布局。在显示时,可以决定在一行里显示一个单一的元素或者一排的元素序列,或将多个元素按照某种顺序设置到多个行和列中。使用表6-25中的类用于此目的。

6-25

978-7-111-54749-5-Chapter06-26.jpg

当创建一个标签类型的元素时,必须指定相应的文本元素。这意味着程序员不能使用这个元素作为设计对象中的单个元素。

(2)创建单个元素

已经创建了一个布局设计对象后,可以使用表6-26中的方法来创建各种类型的元素:这些方法可以在类CL_SALV_FORM_LAYOUT_FLOW和CL_SALV_FORM_LAYOUT_GRID中找到。

6-26

978-7-111-54749-5-Chapter06-27.jpg

可以使用表6-27中的类创建对象的元素

6-27(www.daowen.com)

978-7-111-54749-5-Chapter06-28.jpg

注:行类型的布局的创建不需要参数。表型布局创建时需指定行和列的参数。当创建一个元素类型标签时,必须指定相应的文本元素(R_LABEL_FOR),无论所处的布局类型。

6.2.5.2设定设计对象

程序员可以对设计对象作相关设定,并可以为每个设计对象包含的元素作相关设定,在table-type布局的情况下,也可以为单独的列作相关设定。

(1)设计对象设置

程序员可以对设计对象元素进行以下设置,见表6-28(布局为Flow时)和表6-29(布局为Grid时)。

6-28

978-7-111-54749-5-Chapter06-29.jpg

6-29

978-7-111-54749-5-Chapter06-30.jpg

2)设定元素

可为不同类型的元素设定相似的功能,见表6-30

6-30

978-7-111-54749-5-Chapter06-31.jpg

(3)设定列的宽度及对齐

一列在Table-type布局中的设计对象是类CL_SALV_FORM_GRID_COLUMN的一个对象。可以使用类CL_SALV_FORM_LAYOUT_GRID一次创建多个列的对象,具体方法见表6-31。

6-31

978-7-111-54749-5-Chapter06-32.jpg

可以使用列对象来定义列的宽度和对齐列中的元素,具体方法见表6-32

6-32

978-7-111-54749-5-Chapter06-33.jpg

(4)单一元素的宽度和对齐方式设定

可以定义个别元素的宽度和对齐方式。由于技术原因,必须确定该元素是否在Row-type布局或Table-type布局。

● 对于Row-type布局,使用类CL_SALV_FORM_LAYOUT_DATA_FLOW。

● 对于Table-type布局,使用类CL_SALV_FORM_LAYOUT_DATA_GRID。

要更改布局数据,必须首先确定布局类型。取得元素布局的方法见表6-33。

6-33

978-7-111-54749-5-Chapter06-34.jpg

要定义元素的宽度和对齐方式,现在使用的相应类的方法,见表6-34

6-34

978-7-111-54749-5-Chapter06-35.jpg

6.2.5.3 设计对象实例

1)table-type布局ALV输出的页眉

下面的示例演示如何在Table-type布局的ALV输出的页眉中插入一个设计对象

978-7-111-54749-5-Chapter06-36.jpg

2)Row-Type布局ALV输出的页脚

下面的例子演示了如何在ALV输出的页脚中显示一个文本类型的元素

978-7-111-54749-5-Chapter06-37.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈