ScreenInfo

FreeBASIC

ScreenInfo
 
Retrieves information about current video mode or the desktop.

Syntax

Declare Sub ScreenInfo ( ByRef w As Integer = 0, ByRef h As Integer = 0, ByRef depth As Integer = 0, ByRef bpp As Integer = 0, ByRef pitch As Integer = 0, ByRef rate As Integer = 0, ByRef driver As String = "
" )

Usage

ScreenInfo [ w ] [, [ h ] [, [ depth ] [ , [ bpp ] [ , [ pitch ] [ , [ rate ] [, driver ]]]]]

Parameters

w
Width.
h
Height.
depth
Color depth in bits.
bpp
Bytes per pixel.
pitch
Bytes per scan line.
rate
Refresh rate.
driver
Driver name.

Description

This function can be useful to get current mode informations like graphics driver name, color depth, screen size and more.

If ScreenInfo is called when no graphics mode is set, it returns the information about the desktop.

Here's a description of available fields:

wWidth of the screen in pixels
hHeight of the screen in pixels
depthCurrent pixel format bits per pixel: this can be 1, 2, 4, 8, 16, or 32
pitchSize of a framebuffer row in bytes
rateCurrent refresh rate, or 0 if unknown
driverName of current graphics driver in use, like DirectX or X11


Example

Dim w As Integer, h As Integer
Dim depth As Integer
Dim driver_name As String

Screen 15, 32 
' Obtain info about current mode 
ScreenInfo w, h, depth,,,,driver_name
Print Str(w) + "x" + Str(h) + "x" + Str(depth); 
Print " using " + driver_name + " driver" 
Sleep 
' Quit graphics mode and obtain info about desktop 
Screen 0 
ScreenInfo w, h, depth 
Print "Desktop running at " + Str(w) + "x" + Str(h) + "x" + Str(depth); 


Dialect Differences

  • Not available in the -lang qb dialect unless referenced with the alias __Screeninfo.

Differences from QB

  • New to FreeBASIC

See also