'''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.''' {{PageSeeAlso}} * [[Statement]], [[Function (explanatory)]] * [[REM]] * [[DIM]], [[REDIM]] * [[ON TIMER(n)]] {{PageNavigation}}