Всем привет! Я написал код:
#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)
События не работают. Код частично не мой. Как я понял при нажатии любой клавиши выход их цикла и из программы (автор сделал это для теста событий). Почему не работают события? Библиотека хорошая вроде, но такого я ни как не ждал.