在寫好的ALV樣式中加入樣式枣申,前提你的ALV是可以正確運行的,如果ALV樣式有問題看杭,移步于上一篇文章忠藤。定義樣式首先寫PERFORM LAYOUT_BUILD
。生成一個主函數(shù)楼雹,樣式顯示就在里面定義(很重要)模孩。
- 顏色間隔
WA_LAYOUT-ZEBRA = 'X
- 自適應寬度
WA_LAYOUT-COLWIDTH_OPTIMIZ
代碼效果顏色類似斑馬線,一深一淺贮缅,寬度根據(jù)獲取值的長度調(diào)整瓜贾。展示如下:
顏色間隔,寬度自適應.png
- 行顏色
WA_LAYOUT-INFO_FIELDNAME = 'COLOR'
- 列顏色
WA_LAYOUT-COLTAB_FIELDNAME = 'CELLCOLOR'
color需要在data里面定義color(4) type c
携悯;cellcolor 定義為cellcolor type LVC_T_SCOL
不管行顏色還是列顏色都需要配合算法進行使用,效果展示:
行顏色筷笨、列顏色.png
*按鈕
status(30)定義在data里面憔鬼,而且需要在表頭里面給status留一個位置,配合算法可以將指定的按鈕插入指定的字段里面(例如:循環(huán)表時給工作區(qū)-status 賦值)胃夏,展示效果如下:
按鈕.png
這個程序當數(shù)量>0時為綠燈轴或,<=0時為紅燈,燈就是按鈕(狀態(tài)那一欄)
- 狀態(tài)欄
給程序添加一個gui狀態(tài)仰禀,引用標準表照雁,激活。在data里面定義自定義名字 LIKE SY-REPID VALUE SY-REPID
答恶,然后在上一篇文章中的最后一步里找到
I_CALLBACK_PROGRAM = 自定義名字
饺蚊;
I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
并賦值
在對set_pf_status進行定義
原本的狀態(tài)欄.png
修改過后.png
通過算法可以給狀態(tài)欄的狀態(tài)加上事件。
- 創(chuàng)建事務代碼
先進入SE93悬嗓,創(chuàng)建一個名字為Zxxx的事務代碼污呼,確定之后下一頁面,單選框選程序與屏幕那個包竹,再一次確定燕酷,輸入程序名字(你想給那個程序創(chuàng)建事務代碼就是哪個程序),輸入屏幕值周瞎。保存苗缩、激活、OK啦声诸!