Copies the contents of a graphical page into another graphical page
Syntax
Usage
ScreenCopy [ from_page ] [, to_page ]
Parameters
frompage
page to copy from
topage
page to copy to
Description
from_page is the page to copy from. If this argument is omitted, the current work page is assumed.
to_page is the page to copy to. If this argument is omitted, the currently visible page is assumed.
Page numbers range from 0 to the num_pages specified when setting the graphics mode minus 1
You can use this function to add a double buffer to your graphics. Any SCREEN mode supports this function; you must supply valid page numbers otherwise
ScreenCopy will have no effect. This function has two aliases:
Flip and
PCopy.
Example:
See
ScreenSet example.
Example
'' 320x200x8, with 3 pages
Screen 13,,3
'' image for page #1
ScreenSet 1, 0
Cls
Circle( 160, 100 ), 90, 1 ,,,, f
Circle( 160, 100 ), 90, 15
Print "Press 2 to copy page #2 to visible page"
Print "Press escape to exit"
'' image for page #2
ScreenSet 2, 0
Cls
Line( 50, 50 )-( 270, 150 ), 2, bf
Line( 50, 50 )-( 270, 150 ), 15, b
Print "Press 1 to copy page #1 to visible page"
Print "Press escape to exit"
'' page #0 is the visible page
ScreenSet 0, 0
Cls
Print "Press 1 to copy page #1 to visible page"
Print "Press 2 to copy page #2 to visible page"
Print "Press escape to exit"
Dim k As String
Do
k = Inkey
Select Case k
Case Chr(27)
Exit Do
Case "1"
ScreenCopy 1, 0
Case "2"
ScreenCopy 2, 0
End Select
Sleep 25
Loop
Dialect Differences
- Not available in the -lang qb dialect unless referenced with the alias __Screencopy.
Differences from QB
- New to FreeBASIC. QB had PCopy to do the same function.
See also