Доброго времени суток. Сегодня я хотел бы поделиться с Вами по поводу решения проблемы, с которой я столкнулся и рассказать о возможных путях преодоления этой проблемы.
Итак, моя задача была создать компьютерную игру. Сначала згружается главное меню, в котором по таймеру была реализована прорисовка фоновой картинки и картинок кнопок для выбора режима, но когда игрок выбирал "Загрузить игру", то запускался OpenDialog, в нем вібиралось нужное сохранение и когда начиналась загрузка игры, то место которое было до этого закрыто опендиалогом так и оставалось не закрашеным фоновой картинкой и картинками кнопок.
Почему это происходило? Все потому, что я начинал загрузку сразу, когда таймер еще не успевал даже хотябы раз прорисовать нужный фон и он так и оставался незакрашенным.
Решить эту проблему можно, на мой взгляд, двумя способами:
1) Не использовать опенДиалог для загрузки сохранений, но тогда нужно либо сканировать папку с сохранениями и в список отображать найденные сохранения, либо заранее ограничить количество слотов для сохранения. Например в GTA San Andreas количество сохранений ограничено. Но я не захотел ограничивать чем-то свою игру.
2) После закрытия ОпенДиалога нужно получить имя загрузки, затем сделать задержку на доли секунды (чтобы фон хотябы раз прорисовался) и только потом начинать загрузку самой игры.
Я не знаю пригодится ли кому-то эта информация, но лично мне второй вариан пришел в голову не сразу - пришлось перебрать в голове несколько разных вариантов. На самом деле вариантов гораздо больше, но я остановился на этих двух. На этом Все! Всего доброго, пока!!!!