На третьем уроке мы сделаем наконец-таки редактирование поля. Также реализуем возможность изменения размера лабиринта. В конце напишем функцию для проверки корректности составленного уровня.
Дата отправки отчёта:
4 января 2016 г.
Задание выполнено: за
1 час. 50 мин.
Чему научился:
Повторил работу с ToolStrip, сохранение данных в Tag картинки и ее дальнейшее использование, в этом уроке сохраняли информацию типа Point.
Что было сложным:
Сложностей не было, немного меняю код, появляются небольшие несостыковки, эксперименты.
Комментарии:
Интересный урок, хорошо видна связь между тем, что крутится в программе и тем, что показывается на экране формы. От себя немного изменил код, константы размеров поля перенес в свой класс, переименовал методы и переменные. Как временное решение перенес двумерный массив cell в класс и сделал его открытым для чтения и модификаций. Проверку на размерность поля вынес в конструктор класса Game_area, если инвариант проваливается, то вылетаем с эксепшеном и на другом конце провода ловим его в специальном методе create_game_area, который показывает MessageBox с ошибкой и возвращает прежние параметры поля.
Архив проекта:Ссылка доступна после самостоятельного выполнения этого урока
Научился: Понравился метод "toolWall.Checked = CurrentCell == Cell.wall;". После перехода с Visual Basic догадывался о существовании "private string IsGoodLevel()". )))