1
1
Fork 0
mirror of https://github.com/QB64Official/qb64.git synced 2024-07-07 21:25:14 +00:00
qb64/internal/help/Metacommand.md

2.6 KiB

Metacommands are program wide commands that start with $.

Legacy metacommands (QBasic/QuickBASIC)

Syntax

REM $INCLUDE: 'QB.BI' 'loads a reference file or library

REM $DYNAMIC 'enables resizing of array dimensions with REDIM

REM $STATIC 'arrays cannot be resized once dimensioned

Description

  • QBasic Metacommands are normally used at the program start and are in effect throughout the program.
  • QBasic Metacommands are always prefixed with $ and MUST be commented with an apostrophe or REM.
  • $INCLUDE is always followed by a colon and the full text code file name is commented on both sides.
  • $DYNAMIC allows larger arrays that are changeable in size at runtime.
  • $STATIC makes all arrays unchangeable in size.
  • QBasic metacommands should have their own program line because they are commented.

QB64 metacommands

Syntax

$CHECKING{OFF|ON} 'disables QB64 C++ event and error checking (no spaces)

$CONSOLE 'creates a QB64 console window throughout the program

$RESIZE:{ON|OFF} 'determines if re-sizing of the program screen by the user is allowed(no spaces)

$SCREENHIDE 'hides the QB64 program window throughout the program

$SCREENSHOW 'displays the main QB64 program window

$EXEICON:'iconfile.ico' 'embeds an .ICO file into the final executable (Windows only)

$VERSIONINFO:key=value 'embeds version info metadata into the final executable (Windows only)

$IF...$END IF 'precompiler directive

Description

  • $INCLUDE can be used at the beginning or at the end of program SUB procedures.
  • $CHECKING:OFF should only be used with errorless code where every CPU cycle counts! Use ON to re-enable event checking. Event checking can be turned OFF or ON throughout a program.
  • $CONSOLE creates a console window which can be turned off later with _CONSOLE OFF.
  • $RESIZE:ON allows a user to resize the program window. OFF is default.
  • $SCREENHIDE hides the QB64 program window throughout the program until $SCREENSHOW is used.
  • $IF...$END IF allows selective inclusion of code in the final program.
  • Do not comment out with ' or REM QB64-specific metacommands.

See Also