SDL_CreateWindow
Use this function to create a window with the specified position, dimensions, and flags.
Syntax
SDL_Window* SDL_CreateWindow(const char* title,
int x,
int y,
int w,
int h,
Uint32 flags)
Function Parameters
title |
the title of the window, in UTF-8 encoding |
x |
the x position of the window, SDL_WINDOWPOS_CENTERED, or SDL_WINDOWPOS_UNDEFINED |
y |
the y position of the window, SDL_WINDOWPOS_CENTERED, or SDL_WINDOWPOS_UNDEFINED |
w |
the width of the window |
h |
the height of the window |
flags |
0, or one or more SDL_WindowFlags OR'd together; see Remarks for details |
Return Value
Returns the window that was created or NULL on failure; call SDL_GetError() for more information.
Code Examples
// Example program:
// Using SDL2 to create an application window
#include "SDL.h"
#include <stdio.h>
int main(int argc, char* argv[]){
SDL_Window *window; // Declare a pointer to an SDL_Window
SDL_Init(SDL_INIT_VIDEO); // Initialize SDL2
// Create an application window with the following settings:
window = SDL_CreateWindow(
"An SDL2 window", // window title
SDL_WINDOWPOS_UNDEFINED, // initial x position
SDL_WINDOWPOS_UNDEFINED, // initial y position
640, // width, in pixels
480, // height, in pixels
SDL_WINDOW_OPENGL // flags - see below
);
// Check that the window was successfully made
if(window==NULL){
// In the event that the window could not be made...
printf("Could not create window: %s\n", SDL_GetError());
return 1;
}
// The window is open: enter program loop (see SDL_PollEvent)
SDL_Delay(3000); // Pause execution for 3000 milliseconds, for example
// Close and destroy the window
SDL_DestroyWindow(window);
// Clean up
SDL_Quit();
return 0;
}
Remarks
flags may be any of the following OR'd together:
SDL_WINDOW_FULLSCREEN |
fullscreen window |
SDL_WINDOW_FULLSCREEN_DESKTOP |
fullscreen window at the current desktop resolution |
SDL_WINDOW_OPENGL |
window usable with OpenGL context |
SDL_WINDOW_HIDDEN |
window is not visible |
SDL_WINDOW_BORDERLESS |
no window decoration |
SDL_WINDOW_RESIZABLE |
window can be resized |
SDL_WINDOW_MINIMIZED |
window is minimized |
SDL_WINDOW_MAXIMIZED |
window is maximized |
SDL_WINDOW_INPUT_GRABBED |
window has grabbed input focus |