1, format
可以使用FORMAT来调整输出的颜色,format语法如下:
1 | FORMAT<option1>[ON|OFF] <option2>[ON|OFF]........ |
一旦通过ON设定,FORMAT语句中设置的格式将适用于所有后续输出的语句,直到再次使用OFF选项关闭,其具体选项列表如下:
COLOR n [ON|OFF]:设定列表行的背景颜色。
INTENSIFIED [ON|OFF]:设定是否将字段强化输出。
INVERSE [ON|OFF]:设定是否将背景即文字颜色反转输出。
HOTSPOT [ON|OFF]:将光标以手型显示,单击触发行选择事件(热点)。
INPUT [ON|OFF]:设定输入字段,允许用户输入。
RESET:恢复上述的所有设定默认值。
可以WRITE出来的颜色其实很少,大概有只有8种,如下:
COLOR类型及描述 | ||
No | COLOR | DESC |
0 | COL_BACKGROUND | Background(GUI-specific) |
1 | COL_HEADING | Headers(grayish blue) |
2 | COL_NORMAL | List body(bright gray) |
3 | COL_TOTAL | Totals(yellow) |
4 | COL_KEY | Key columns(bluish green) |
5 | COL_POSITIVE | Positive threshold value(green) |
6 | COL_NEGATIVE | Negative threshold value(red) |
7 | COL_GROUP | Control levels(violet) |
例子代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | REPORT ztest_list_color. DATA colTYPE iVALUE0. DO8TIMES. col= sy-index-1. FORMATCOLOR= col. WRITE:/ colCOLOROFF, 'INTENSIFIED ON'INTENSIFIED ON, 'INTENSIFIED OFF'INTENSIFIEDOFF, 'INVERSE ON'INVERSE ON, 'INVERSE OFF'INVERSEOFF, 'HOTSPOT ON'HOTSPOT ON, 'HOTSPOT OFF'HOTSPOTOFF, 'INPUT ON'INPUT ON, 'INPUT OFF'INPUTOFF, 'FRAMES ON' FRAMES ON, 'FRAMES OFF' FRAMESOFF, 'RESET'RESET. ENDDO. |
运行如下:
2, color
第二种方法是利用write语句中的color 关键字,语法如下:
1 | ...[COLOR {[=]{color[ON]}|OFF}|{= col}] |
也能输出8种颜色,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | REPORT ztest_list_color2. DATAsumTYPE i. WRITE:'COL_BACKGROUND',sumCOLORCOL_BACKGROUND. ULINE. WRITE:'COL_HEADING ',sumCOLORCOL_HEADING. ULINE. WRITE:'COL_NORMAL ',sumCOLORCOL_NORMAL. ULINE. WRITE:'COL_TOTAL ',sumCOLORCOL_TOTAL. ULINE. WRITE:'COL_KEY ',sumCOLORCOL_KEY. ULINE. WRITE:'COL_POSITIVE ',sumCOLORCOL_POSITIVE. ULINE. WRITE:'COL_NEGATIVE ',sumCOLORCOL_NEGATIVE. ULINE. WRITE:'COL_GROUP ',sumCOLORCOL_GROUP. |
运行结果:
以上。