Всем привет! Я написал код:
#include «SDL2/SDL.h»
#include
using namespace std;
// Размеры окна.
const int Window_width= 640;
const int Window_height= 480;
SDL_Event event; // Создаем структуру событий.
bool running= true; // Работает ли приложение.
int main(int argc, char **argv)
{
// Инициализируем все модули SDL (видео, аудио и т. д.).
if (SDL_Init(SDL_INIT_EVERYTHING) != 0)
// if (SDL_Init(SDL_INIT_EVENTS) != 0)
return 1;
SDL_Surface* screen_surface = NULL;
SDL_Window* window = NULL;
// создаем окно.
window= SDL_CreateWindow(«Hello, SDL 2!»,SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED, Window_width, Window_height,
SDL_WINDOW_SHOWN);
if (window == NULL)
return 1;
while (running) // Пока работает.
{
// Цикл обработки событий.
while (SDL_PollEvent(&event) )
{
if (event.type == SDL_QUIT)
{
running = false;
}
if (event.type == SDL_KEYDOWN)
{
running = false;
}
if (event.type == SDL_MOUSEBUTTONDOWN)
{
running = false;
}
}
} // Конец while (running)
} // Конец main()
Компилирую так: g++ /home/grec/D/progi/3D_Modeling.cpp -o 3D_Modeling.compl -lSDL $(sdl2-config –cflags –libs)
События не работают. Код частично не мой. Как я понял при нажатии любой клавиши выход их цикла и из программы (автор сделал это для теста событий). Почему не работают события? Библиотека хорошая вроде, но такого я ни как не ждал.