Как я могу сказать, пытается ли пользователь закрыть окно в C ++? - PullRequest
6 голосов
/ 16 июня 2011

Мне нужно прервать цикл while, когда пользователь нажимает кнопку закрытия в окне, но я не знаю, что проверять. Я использую Allegro для запуска графического интерфейса.

1 Ответ

1 голос
/ 16 июня 2011

При использовании Allegro 4: set_close_button_callback ()

volatile int hit_closed = 0;

void close_button_proc()
{
  hit_closed = 1;
}

// later after creating the display:

set_close_button_callback(close_button_proc);

while (!hit_closed)
{
}

С Allegro 5 это больше похоже на:

al_register_event_source(queue, al_get_display_event_source(display));

// in your event loop:

if (event.type == ALLEGRO_EVENT_DISPLAY_CLOSE) {
}

См. руководство для всех деталей.

...