通过类CL_SALV_DISPLAY_SETTINGS我们可以设置ALV的显示样式,主要包括ALV表头名称,列表颜色间隔显示,水平线是否显示,竖线是否显示等。

1.首先我们要取得类CL_SALV_DISPLAY_SETTINGS的实例,根据类CL_SALV_TABLE的方法get_display_settings可以取得显示样式的实例。

lr_display = gr_table->get_display_settings( ).

2然后通过类CL_SALV_DISPLAY_SETTINGS的方法设置显示属性。

lr_display = gr_table->get_display_settings( ).

lr_display->set_striped_pattern( 'X' ). "设置颜色间隔显示

lr_display->set_list_header( 'Xin''s ALV' ). "设置ALV的抬头

lr_display->set_horizontal_lines( '' ). "设置水平线是否显示

lr_display->set_vertical_lines( '' ).    "设置垂直线是否显示

下面是效果图

下面是程序的所有代码:

REPORT  y_xin_002.

*变量定义

TYPES ty_spfli TYPE spfli OCCURS 0.

DATA: gr_table     TYPE REF TO cl_salv_table.

*----------------------------------------------------------------------*

*       CLASS lcl_alv DEFINITION

*----------------------------------------------------------------------*

*       ALV操作类(定义)

*----------------------------------------------------------------------*

CLASS lcl_alv DEFINITION.

PUBLIC SECTION.

METHODS: getdata         "取得要显示的数据

RETURNING value(lt_tab) TYPE ty_spfli,

alv_full        "全屏Grid列表处理方法

IMPORTING value(lt_tab) TYPE ty_spfli,

main.           "主方法

ENDCLASS.                    "lcl_alv DEFINITION

*----------------------------------------------------------------------*

*       CLASS lcl_alv IMPLEMENTATION

*----------------------------------------------------------------------*

*       ALV操作类(实现)

*----------------------------------------------------------------------*

CLASS lcl_alv IMPLEMENTATION.

*取得要显示的数据

METHOD getdata.

SELECT * INTO TABLE lt_tab FROM spfli.

ENDMETHOD.                    "getdata

*输出全屏网格列表的方法

METHOD alv_full.

DATA: lr_functions TYPE REF TO cl_salv_functions,

lr_display   TYPE REF TO cl_salv_display_settings.

data boolean type c.

"创建实例

TRY.

cl_salv_table=>factory(

IMPORTING

r_salv_table = gr_table

CHANGING

t_table      = lt_tab

).

CATCH cx_salv_msg.

ENDTRY.

"显示ALV的标准功能

lr_functions = gr_table->get_functions( ).

lr_functions->set_all( 'X' ).

"设置ALV的显示样式

lr_display = gr_table->get_display_settings( ).

lr_display->set_striped_pattern( 'X' )."设置颜色间隔显示

lr_display->set_list_header( 'Xin''s ALV' ). "设置ALV的抬头

lr_display->set_horizontal_lines( '' ).  "设置水平线是否显示

lr_display->set_vertical_lines( '' ).   "设置垂直线是否显示

"显示列表

gr_table->display( ).

ENDMETHOD.                    "alv_full

*主方法,整合数据

METHOD main.

DATA: lt_tab TYPE TABLE OF spfli.

"取得要显示的数据

lt_tab = me->getdata( ).

me->alv_full( lt_tab ).

ENDMETHOD.                    "main

ENDCLASS.                    "lcl_alv IMPLEMENTATION

*报表执行

START-OF-SELECTION.

DATA  lr_alv   TYPE REF TO lcl_alv.

CREATE OBJECT lr_alv.

lr_alv->main( ).

OO实现ALV TABLE 四:ALV的显示样式相关推荐

  1. WDA学习(9):Use an ALV TABLE in WDA

    实例展示如何使用ALV TABLE在窗口显示航班信息. 1.创建Web Dynpro Component. 2.创建Component Usage,使用SALV_WD_TABLE组件 Context页 ...

  2. 隐藏html表格边框显示,table显示所有边框 table的边框怎么显示不出来

    css中怎么使table的内部边框显示出来? 怎么隐藏table所有边框 设置了 cellpadding="0" border="0" cellspacing= ...

  3. html中visibility属性,(CSS) 不同浏览器对table中visibility属性显示的不同

    本文举例说明在不同浏览器对table中visibility属性显示的不同. 一.HTML代码 thth tdtd 二.不同浏览器的表示 选取了Chrome.FireFox.Edge.IE11分别测试, ...

  4. [JavaScript]利用JavaScript控制table中row的显示

    在程序中有时候我们需要根据选择来显示我们需要的信息,通过控制table中row的显示可以实现这样的功能. NoneRow1Row2Row3 Row1 Row2 Row3 JavaScript  < ...

  5. LDE显示驱动(四):显示驱动内核底层代码分析

    作者:DayInAI 日期:20190124 一.RTMX 1)int de_rtmx_set_route(unsigned int sel, unsigned char pno, unsigned ...

  6. html表格不能横向自动展示,layui数据表格table横向滚动条不显示纵向滚动条显示不完整...

    layui数据表格table横向滚动条不显示纵向滚动条显示不完整 layui数据表格table横向滚动条不显示,纵向滚动条显示不完整 需要把heigh高度写死 table.render({ elem: ...

  7. Layui table无数据时显示Error而不是显示无数据

    先放问题和结果: layui table无数据时显示Error而不是显示无数据,是因为接口返回状态码的问题, 当无数据时code返回了0,就会导致出现Error 第一种解决方案(后端接口处理): 后端 ...

  8. layui静态表格设置滚动条_解决layui数据表格table的横向滚动条显示问题

    解决layui数据表格table的横向滚动条显示问题 加上这段样式代码就可以解决了: body{overflow-y: scroll;} /* 禁止刷新后出现横向滚动条 */ ps:这个问题fly社区 ...

  9. Arduino + ESP32-C3 + TFT(1.8‘ ST7735S)基础平台(实验四)直接显示网络图片

    ---------------------------------------------------------------------------------------------------- ...

最新文章

  1. $(#id).val()取值textarea是
  2. C语言实用算法系列之memcpy、memmove函数原理与实现
  3. pc端html轮播带滑块,swiper.js简单快速实现轮播滑动(兼容PC端、移动端)
  4. android uri parcel,Android ParcelFileDescriptor实现进程间通信
  5. C/C++基础一:stack heap
  6. PHP 解决未定义变量报错
  7. 【图像加密】基于matlab GUI Arnold置乱图像加密解密【含Matlab源码 1239期】
  8. 群晖设置php.ini,【入门普及贴】群晖NAS组装、洗白经验总结及分享
  9. 下属执行不给力?真相是90%的领导不会布置任务!
  10. 关于C2100间接寻址的问题
  11. linux系统重装win系统教程,Win10如何重装linux系统 Win10重装linux系统教程
  12. 精品餐饮业奢华西餐专业PPT-朴尔PPT
  13. 简单测试ROS里面C++ 和 python 文件获取参数格式
  14. 碎碎念情境记忆法——最适合程序员的背单词方法
  15. el-form的入门学习
  16. Jenkins集成动态salve报错 连接测试报错:
  17. 谷歌又在开发新AI框架!这次瞄准的是:通用人工智能(AGI)
  18. (转)操作系统实现多线程的几种模式
  19. Win10家庭版实现远程桌面 RDPWraper -解决not supported ,not listening问题
  20. C# 使用163 SMTP发送邮件

热门文章

  1. OSGi-入门篇之服务层(03)
  2. [Unity3D] Input按键系统
  3. samba客户端的总结与归纳
  4. nginx代理设置域名跳转/域名重定向
  5. 让感恩变成永久的记忆
  6. ocr移动端车牌识别技术特点
  7. 我对对象和引用的理解
  8. @interface CTDataFactoryViewController : CTMessageViewController
  9. WP评论系统更换小结(转)
  10. 黑客攻破网站涂鸦特效(强烈建议看看)