OpenWindowedScreen()
Syntax
Result = OpenWindowedScreen(WindowID, x, y, Width, Height [, AutoStretch, RightOffset, BottomOffset [, FlipMode]])Description
Open a new screen area according to given parameters on the given Window, which must be opened before using OpenWindow(). InitSprite() has to be called successfully before using this command. The "windowed screen" is able to use the hardware acceleration the same way than full-size OpenScreen() function.
Parameters
WindowID The window to use to create the screen. WindowID() can be used to get a valid window identifier. x, y The screen position in the specified window, in pixels. Width, Height The screen resolution, in pixels. AutoStretch (optional) Ignored. RightOffset, BottomOffset (optional) Ignored. FlipMode (optional) Ignored.
Return value
Nonzero if the screen has been successfully opened, zero otherwise.
Remarks
Only one windowed screen can be opened at one time. The screen dimension can't be greater than the window size or artefacts can occurs.
Example: Fixed screen size with gadgets
OpenWindow(0, 20, 20, 840, 640, "A screen in a window...", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) OpenWindowedScreen(WindowID(0), 20, 20, 800, 600) Procedure RenderFrame() Static x, y ClearScreen(RGB(0, 0, 0)) x+1 DisplaySprite(0, x, 30) FlipBuffers() ; continue the rendering EndProcedure ; Register the render event so FlipBuffers() will trigger the associated procedure BindEvent(#PB_Event_RenderFrame, @RenderFrame()) CreateSprite(0, 64, 64) If StartDrawing(SpriteOutput(0)) Circle(32, 32, 25, RGB(255, 0, 0)) ; Red circle StopDrawing() EndIf FlipBuffers() ; trigger the rendering
For a more detailed example look at
Example
WindowedScreen.sb
See Also
OpenScreen(), FlipBuffers(), ResizeScreen()
Supported OS
All