Red de conocimiento informático - Problemas con los teléfonos móviles - Ventana múltiple de SDL 1.2

Ventana múltiple de SDL 1.2

SDL 1.2 no tiene funciones para soportar múltiples ventanas.

En SDL 2.0 se agregó soporte para múltiples ventanas (llamando a la función SDL_CreateWindow).

Por ejemplo:

#include?

#include?

# incluir ?

int?main(int?argc, char?*argv[])

{

SDL_Window?*win_1?= ? NULL;

SDL_Window?*win_2?=?NULL;

SDL_Event?event;

int?-1)?{

fprintf(stderr,?" ¿Inicializando?%s\n",

SDL_GetError());

return?EXIT_FAILURE;

}

atexit(SDL_Quit);

win_1?=?SDL_CreateWindow("Ventana?#1 ", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 200,?200,?SDL_WINDOW_SHOWN);

if( NULL ?==?win_1)?{

fprintf(stderr,?" Error al crear la ventana n.º 1: ?%s\n",

SDL_GetError());

return?EXIT_FAILURE;

}

win_2?=?SDL_CreateWindow("¿Ventana?#2", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 200,?200,?SDL_WINDOW_SHOWN);

if(NULL?==?win_2)?{

SDL_DestroyWindow(win_1);

fprintf(stderr,?" No se pudo crear la ventana n.º 2: ?%s \n",

SDL_GetError());

return?EXIT_FAILURE;

}

mientras (en ejecución)? {

¿mientras?(SDL_PollEvent(&event))?{

¿cambiar?{

caso?SDL_QUIT:

¿en ejecución?=? 0;

rotura;

caso?SDL_WINDOWEVENT:

si?(SDL_WINDOWEVENT_CLOSE?==?event.window .event)?{

ejecutando ?=?0;

}

break;

predeterminado:?break;

}

} }

SDL_UpdateWindowSurface(win_1);

SDL_ UpdateWindowSurface(win_2);

}

SDL_DestroyWindow(win_1);

SDL_DestroyWindow(win_2);

¿regresar?;

}