CLS: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
m (Removed protection from "CLS")
No edit summary
Line 2: Line 2:




{{PageSyntax}}  
{{PageSyntax}}
: [[CLS]] [{{Parameter|method%}}] [, {{Parameter|bgColor&}}]
: [[CLS]] [{{Parameter|method%}}] [, {{Parameter|bgColor&}}]


Line 17: Line 17:
{{PageDescription}}
{{PageDescription}}
* In legacy [[SCREEN]] modes {{Parameter|bgColor&}} specifies the color attribute of the background.
* In legacy [[SCREEN]] modes {{Parameter|bgColor&}} specifies the color attribute of the background.
* For 32-bit graphics mode, {{Parameter|bgColor&}} specifies the [[_RGB]] or [[_RGBA]] color to use.  
* For 32-bit graphics mode, {{Parameter|bgColor&}} specifies the [[_RGB]] or [[_RGBA]] color to use.
* '''32-bit screen surface backgrounds (black) have zero [[_ALPHA]] so that they are transparent when placed over other surfaces.'''
* '''32-bit screen surface backgrounds (black) have zero [[_ALPHA]] so that they are transparent when placed over other surfaces.'''
** Use [[CLS]] or [[_DONTBLEND]] to make a new surface background [[_ALPHA]] 255 or opaque.
** Use [[CLS]] or [[_DONTBLEND]] to make a new surface background [[_ALPHA]] 255 or opaque.
Line 27: Line 27:
{{PageExamples}}
{{PageExamples}}
''Example 1:'' Printing black text on a white background in QB64.
''Example 1:'' Printing black text on a white background in QB64.
{{CodeStart}} '' ''
{{CodeStart}}
{{Cl|SCREEN}} 12
{{Cl|SCREEN}} 12
{{Cl|CLS}} , 15
{{Cl|CLS}} , 15
Line 38: Line 38:


''Example 2:'' You don't need to do anything special to use a .PNG image with alpha/transparency. Here's a simple example:
''Example 2:'' You don't need to do anything special to use a .PNG image with alpha/transparency. Here's a simple example:
{{CodeStart}} '' ''
{{CodeStart}}
{{Cl|SCREEN}} {{Cl|_NEWIMAGE}}(640, 480, 32)
{{Cl|SCREEN}} {{Cl|_NEWIMAGE}}(640, 480, 32)
{{Cl|CLS}} , {{Cl|_RGB}}(0, 255, 0)
{{Cl|CLS}} , {{Cl|_RGB}}(0, 255, 0)
i = {{Cl|_LOADIMAGE}}('''"qb64_trans.png"''') 'see note below examples to get the image  
i = {{Cl|_LOADIMAGE}}('''"qb64_trans.png"''') 'see note below examples to get the image
{{Cl|_PUTIMAGE}} (0, 0), i 'places image at upper left corner of window w/o stretching it  
{{Cl|_PUTIMAGE}} (0, 0), i 'places image at upper left corner of window w/o stretching it
'' ''
 
{{CodeEnd}}
{{CodeEnd}}



Revision as of 01:16, 23 January 2023

The CLS statement clears the current write page.


Syntax

CLS [method%] [, bgColor&]


Template:Parameters

  • method% specifies which parts of the page to clear, and can have one of the following values:
    • CLS - clears the active graphics or text viewport or the entire text screen and refreshes bottom function KEY ON line.
    • CLS 0 - Clears the entire page of text and graphics. Print cursor is moved to row 1 at column 1.
    • CLS 1 - Clears only the graphics view port. Has no effect for text mode.
    • CLS 2 - Clears only the text view port. The print cursor is moved to the top row of the text view port at column 1.
  • The bgColor& specifies the color attribute or palette index to use when clearing the screen in QB64.


Description

  • In legacy SCREEN modes bgColor& specifies the color attribute of the background.
  • For 32-bit graphics mode, bgColor& specifies the _RGB or _RGBA color to use.
  • 32-bit screen surface backgrounds (black) have zero _ALPHA so that they are transparent when placed over other surfaces.
  • If not specified, bgColor& is assumed to be the current background color. 32-bit backgrounds will change to opaque.
  • If bgColor& is not a valid attribute, an illegal function call error will occur.
  • Use _PRINTMODE to allow the background colors to be visible through the text or the text background.


Examples

Example 1: Printing black text on a white background in QB64.

SCREEN 12
CLS , 15
_PRINTMODE  _KEEPBACKGROUND        'keeps the text background visible
COLOR 0: PRINT "This is black text on a white background!"
K$ = INPUT$(1
Explanation: _PRINTMODE can be used with PRINT or _PRINTSTRING to make the text or the text background transparent.


Example 2: You don't need to do anything special to use a .PNG image with alpha/transparency. Here's a simple example:

SCREEN _NEWIMAGE(640, 480, 32)
CLS , _RGB(0, 255, 0)
i = _LOADIMAGE("qb64_trans.png") 'see note below examples to get the image
_PUTIMAGE (0, 0), i 'places image at upper left corner of window w/o stretching it

Explanation: When QB64 loads a .PNG file containing a transparent color, that color will be properly treated as transparent when _PUTIMAGE is used to put it onto another image. You can use a .PNG file containing transparency information in a 256-color screen mode in QB64. CLS sets the _CLEARCOLOR setting using _RGB.


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link