$COLOR: Difference between revisions
Jump to navigation
Jump to search
Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link
No edit summary Tag: Manual revert |
No edit summary |
||
Line 22: | Line 22: | ||
;Example 1:Adding named color constants for SCREEN 0. | ;Example 1:Adding named color constants for SCREEN 0. | ||
{{CodeStart}} | {{CodeStart}} | ||
{{ | {{Cm|$COLOR}}:{{Text|0|#F580B1}} | ||
{{Cl|COLOR}} BrightWhite, Red | {{Cl|COLOR}} BrightWhite, Red | ||
{{Cl|PRINT}} "Bright white on red." | {{Cl|PRINT}} {{Text|<nowiki>"Bright white on red."</nowiki>|#FFB100}} | ||
{{CodeEnd}} | {{CodeEnd}} | ||
{{OutputStartBG0}} | {{OutputStartBG0}} | ||
{{Ot|Bright white on red.|#fcfcfc|#a80000}} | {{Ot|Bright white on red.|#fcfcfc|#a80000}} | ||
{{OutputEnd}} | {{OutputEnd}} | ||
---- | |||
;Example 2:Adding named color constants for 32-bit modes. | ;Example 2:Adding named color constants for 32-bit modes. | ||
{{CodeStart}} | {{CodeStart}} | ||
{{Cl|SCREEN}} {{Cl|_NEWIMAGE}}(640, 400, 32) | {{Cl|SCREEN}} {{Cl|_NEWIMAGE}}({{Text|640|#F580B1}}, {{Text|400|#F580B1}}, {{Text|32|#F580B1}}) | ||
{{ | {{Cm|$COLOR}}:{{Text|32|#F580B1}} | ||
{{Cl|COLOR}} CrayolaGold, DarkCyan | {{Cl|COLOR}} CrayolaGold, DarkCyan | ||
{{Cl|PRINT}} "CrayolaGold on DarkCyan." | {{Cl|PRINT}} {{Text|<nowiki>"CrayolaGold on DarkCyan."</nowiki>|#FFB100}} | ||
{{CodeEnd}} | {{CodeEnd}} | ||
---- | |||
;Example 3:Adding named color constants for 32-bit modes (with $NOPREFIX in effect). | ;Example 3:Adding named color constants for 32-bit modes (with $NOPREFIX in effect). | ||
{{CodeStart}} | {{CodeStart}} | ||
{{Cl|SCREEN}} {{Cl|_NEWIMAGE}}(640, 400, 32) | {{Cl|SCREEN}} {{Cl|_NEWIMAGE}}({{Text|640|#F580B1}}, {{Text|400|#F580B1}}, {{Text|32|#F580B1}}) | ||
{{ | {{Cm|$COLOR}}:{{Text|32|#F580B1}} | ||
{{ | {{Cm|$NOPREFIX}} | ||
{{Cl|COLOR}} NP_Red, White 'notice the NP_ in front of Red? | {{Cl|COLOR}} NP_Red, White {{Text|<nowiki>'notice the NP_ in front of Red?</nowiki>|#919191}} | ||
'This is to distinguish the color from the command with $NOPREFIX. | {{Text|<nowiki>'This is to distinguish the color from the command with $NOPREFIX.</nowiki>|#919191}} | ||
{{Cl|PRINT}} "Red on White." | {{Cl|PRINT}} {{Text|<nowiki>"Red on White."</nowiki>|#FFB100}} | ||
{{CodeEnd}} | {{CodeEnd}} | ||
Revision as of 21:31, 20 March 2023
$COLOR is a metacommand that adds named color constants in a program.
Syntax
Description
- $COLOR:0 adds constants for colors 0-15. The actual constant names can be found in the file source/utilities/color0.bi.
- $COLOR:32 adds constants for 32-bit colors, similar to HTML color names. The actual constant names can be found in the file source/utilities/color32.bi.
- $COLOR is a shorthand to manually using $INCLUDE pointing to the files listed above.
- Prior to QB64-PE v0.5.0, $COLOR was not compatible with $NOPREFIX.
- Since QB64-PE v0.5.0, $COLOR can now be used with $NOPREFIX, with a few notable differences to three conflicting colors -- Red, Green, Blue.
- Red would conflict with _RED, Green would conflict with _GREEN, and Blue would conflict with _BLUE, once the underscore was removed from those commands with $NOPREFIX.
- To prevent these conflicts, the COLOR values have had NP_ prepended to the front of them, to distinguish them from the non-prefixed command names. All other color names remain the same, with only the three colors in conflict having to use NP_ (for No Prefix) in front of them.
Examples
- Example 1
- Adding named color constants for SCREEN 0.
$COLOR:0 COLOR BrightWhite, Red PRINT "Bright white on red." |
Bright white on red.
|
- Example 2
- Adding named color constants for 32-bit modes.
SCREEN _NEWIMAGE(640, 400, 32) $COLOR:32 COLOR CrayolaGold, DarkCyan PRINT "CrayolaGold on DarkCyan." |
- Example 3
- Adding named color constants for 32-bit modes (with $NOPREFIX in effect).
SCREEN _NEWIMAGE(640, 400, 32) $COLOR:32 $NOPREFIX COLOR NP_Red, White 'notice the NP_ in front of Red? 'This is to distinguish the color from the command with $NOPREFIX. PRINT "Red on White." |
See also