На третьем уроке мы сделаем наконец-таки редактирование поля. Также реализуем возможность изменения размера лабиринта. В конце напишем функцию для проверки корректности составленного уровня.
Дата отправки отчёта:
15 марта 2015 г.
Задание выполнено: за
1 час. 30 мин.
Чему научился:
1. Добавлению строк и столбцов в редакторе (функция не несет в себе явной новизны, но как это реализовать, я до этого урока не очень понимал) 2. Работа с компонентом DropDownButton для меня достаточно новая. 3. Вставка картинки по левой и правой кнопки мыши. Я думал, будут достаточно большой разветвленный алгоритм, но по имеющимся функциям обошлись по одной строке на каждую кнопку мыши - это классно
Что было сложным:
Всё-таки добавление строк и столбцов.
Комментарии:
Тоже интересная в практическом отношении новелла нашего сериала "Сокобан". Много подчерпнул интересных инноваций для себя. Кое-что привнес по-своему. Не придумал, какую картинку поместить на список меню добавления/удаления строк и столбцов, и в конце концов сделал у компонента DisplayStyle=Text и словами вписал "Строки и столбцы". А по функции проверки IsGoodLevel мне не очень понравилось, что она будет возвращать по одной ошибке за цикл проверки, и я добавил в нее строковую переменную checkLevel, и все return, кроме конечного заменил на checkLevel+=" ошибка ... нужно указать..." и текст ошибки. а в конце return checkLevel, чтобы программа возвращала всё, что она имеет против нашего уровня на данный момент
Научился: Понравился метод "toolWall.Checked = CurrentCell == Cell.wall;". После перехода с Visual Basic догадывался о существовании "private string IsGoodLevel()". )))