? tab(-10, AG_SYSCOLOR); id{,r,g,b}; chr(127);
AG_SYSCOLOR (63) allows you to change the Windows RGB value for certain parts of the Windows user interface. Note that this is offered on an as-is basis, and is not recommended due to:
• Conflicts between these settings and the current Theme
• Conflicts with the "approved" way of changing Windows desktop settings (via the Control Panel)
• Differences in the way it may work under different versions of Windows
• Possible problems with the way other applications may respond to the fact of color changes (since any such change triggers a notification message to be sent to all affected applications).
That said, you can experiment as you wish. The values for the id parameter are shown in the following table.
Symbol |
Value |
|
Symbol |
Value |
COLOR_SCROLLBAR |
0 |
|
COLOR_INACTIVEBORDER |
11 |
COLOR_BACKGROUND |
1 |
|
COLOR_APPWORKSPACE |
12 |
COLOR_ACTIVECAPTION |
2 |
|
COLOR_HIGHLIGHT |
13 |
COLOR_INACTIVECAPTION |
3 |
|
COLOR_HIGHLIGHTTEXT |
14 |
COLOR_MENU |
4 |
|
COLOR_BTNFACE |
15 |
COLOR_WINDOW |
5 |
|
COLOR_BTNSHADOW |
16 |
COLOR_WINDOWFRAME |
6 |
|
COLOR_GRAYTEXT |
17 |
COLOR_MENUTEXT |
7 |
|
COLOR_BTNTEXT |
18 |
COLOR_WINDOWTEXT |
8 |
|
COLOR_INACTIVECAPTIONTEXT |
19 |
COLOR_CAPTIONTEXT |
9 |
|
COLOR_BTNHIGHLIGHT |
20 |
COLOR_ACTIVEBORDER |
10 |
|
|
|
The RGB values r, g, and b range from 0 to 255 (0,0,0=black; 255,255,255=white).
If you don't specify the r, g, and b values, the Tab function will return a string in the keyboard buffer containing the current r, g, and b values for the specified interface component.
Note that if you are associated A-Shell palette numbers with the standard Windows dialog background, window background, or text, you must do that first before using the AG_SYSCOLOR command.