abap--关于在REUSE_ALV_GRID_DISPLAY将单元或行标识不同的颜色的处理收集

一、指定行显示不同颜色
参见:http://blog.csdn.net/CompassButton/archive/2006/09/08/1195672.aspx 

二、不同列显示不同颜色
1)对于非key字段则可以通过设置字段格式(slis_fieldcat_alv)的emphasize指定,代码如下:
  data: wa_fieldcat type slis_fieldcat_alv.
  clear wa_fieldcat.
  wa_fieldcat-ref_fieldname = im_ref_field.
  wa_fieldcat-ref_tabname = im_ref_table.
  wa_fieldcat-fieldname = im_fieldname.
  wa_fieldcat-tabname   = im_tabname.
  wa_fieldcat-key       = ‘’.
  wa_fieldcat-fix_column = IM_fix.
  wa_fieldcat-checkbox  = im_checkbox.
  wa_fieldcat-do_sum     = im_dosum.
  wa_fieldcat-no_zero     = im_zero.
  wa_fieldcat-no_out     = im_out.
  wa_fieldcat-seltext_l = im_seltex_l.
  wa_fieldcat-seltext_m = im_seltex_l.
  wa_fieldcat-seltext_s = im_seltex_l.
  wa_fieldcat-outputlen = im_outputlen.
  wa_fieldcat-decimals_out = im_dec.
  wa_fieldcat--emphasize = 'C500'.
*  wa_fieldcat-col_pos   = IM_colpos.
  append wa_fieldcat to re_field.
2)对于key字段的设置参见单元颜色设置一个特例(整列的所有单元)

三、指定单元格显示不同颜色(参见红色代码)
代码
report  Ztest_fullscreencolor.
type-pools: slis.
class cl_gui_resources definition load.
types: begin of g_ty_s_test,
         select_amount            type i,
         color_rows               type i occurs 0,
         color_fields_column      type lvc_fname occurs 0,
         color_fields_cell        type lvc_fname occurs 0,
       end of   g_ty_s_test,

       begin of g_ty_s_outtab_slis.
include type alv_t_t2.
 *定义颜色设置字段
types:   color(4)  type c,
         tabcolor  type slis_t_specialcol_alv,

       end   of g_ty_s_outtab_slis,
       g_ty_t_outtab_slis type table of g_ty_s_outtab_slis.

constants: con_true         type char1 value 'X'.

field-symbols: <gt_outtab> type standard table.

data: gs_test   type g_ty_s_test,
      gt_outtab_slis  type g_ty_t_outtab_slis,
      g_repid type sy-repid.

data: g_field     type lvc_s_fcat-fieldname,
      g_int_field type i.
*----------------------------------------------------------------------*
* SELECTION-SCREEN                                                     *
*----------------------------------------------------------------------
selection-screen begin of block col with frame title text-col.
parameters:
p_col01 as checkbox.
select-options:
p_colf01 for g_int_field no intervals default 1.
parameters:
p_col02 as checkbox  default 'X'.
select-options:
p_colf02 for g_field no intervals default 'CARRID'.
parameters:
p_col03 as checkbox .
select-options:
p_colf03 for g_field no intervals default 'CONNID'.
selection-screen end of block col.

*----------------------------------------------------------------------*
* AT SELECTION-SCREEN ON VALUE-REQUEST                                 *
*----------------------------------------------------------------------*
at selection-screen on value-request for p_colf02-low.
  perform f01_f4_fcode changing p_colf02-low.

at selection-screen on value-request for p_colf03-low.
  perform f01_f4_fcode changing p_colf03-low.

*----------------------------------------------------------------------*
* START-OF-SELECTION                                                   *
*----------------------------------------------------------------------*
start-of-selection.
  g_repid               = sy-repid.

  gs_test-select_amount = 30.

  if p_col01 eq con_true.
    loop at p_colf01.
      if not p_colf01-low is initial.
        append p_colf01-low to gs_test-color_rows.
      endif.
    endloop.
  endif.
  if p_col02 eq con_true.
    loop at p_colf02.
      if not p_colf02-low is initial.
        append p_colf02-low to gs_test-color_fields_column.
      endif.
    endloop.
  endif.
  if p_col03 eq con

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值