Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Сокобан / Сокобан - Редактор - Улучшение

  • Допиливаем и дорабатываем редактор до товарного вида.
    Реализуем ещё несколько фишек.
  • Дата отправки отчёта: 6 января 2016 г.
  • Задание выполнено: за 2 час. 10 мин.
  • Чему научился: Повторил работу с toolStrip, toolStripComboBox.
  • Что было сложным: Понять, как сделать значения из списка toolStripComboBox доступными только для чтения.
  • Комментарии: Понравился способ добавления сразу нескольких элементов на поле игры.
    Внес небольшие изменения, поставил перед собой цель - ограничить выбор и установку значения ширины и высоты уровня в допустимых пределах, то есть, разрешить ввод только числовых значений и организовать проверку случая выхода за границы интервала минимального и максимального размера уровня. Сначала хотел добиться этого путем создания дополнительного кода: просто брать данные из textBox и парсить, но хотелось другого решения, с помощью средств компонентов Windows Forms. Решение оказалось простым - компонент toolStripComboBox. Для того, чтобы игрок не мог ввести буквы и число вне диапазона, установил значение свойства DropDownStyle = DropDownList, и благодаря этому данные из toolStripComboBox оказались доступными только для чтения и возможный выбор размера ограничен моим заранее созданным списком значений. Осталось дело за малым, корректно заполнить список элементов списка и в дальнейшем обрабатывать выбранное значение.
  • Архив проекта: Ссылка доступна после самостоятельного выполнения этого урока
  • Оценка видео-уроку:
Отчёт от 7276 за Сокобан / Сокобан - Редактор - Улучшение


Отчёт от 7276 за Сокобан / Сокобан - Редактор - Улучшение




Оцени работу

 
Сохранить страницу:

8005. --
Александр
Александр
ответить
→  Ильшат  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2016-01-06 11:58

Не понял, Ильшат.
toolStripComboBox - это компонент - комбобокс с текстбоксом что ли , совмещенный ? и при вводе значений в этом тексбоксике , выбираются значения из содержимого комбобокса?


7276. --
Ильшат
Ильшат
ответить
→  Александр  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2016-01-06 17:02

Александр, да, в комбобоксе можно вводить текст, причем любой - цифры, буквы, что угодно и при вводе комбобокс выполняет поиск по списку содержащихся элементов. Мне нужно было ограничить ввод только для чисел и только в определенном диапазоне, у меня это от 5 до 40, для этого просто установил DropDownStyle = DropDownList и получил желаемое. Попробуй, если интересно)


24. --
Олюшка
Олюшка
ответить
→  Ильшат  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2016-01-06 20:15

Ильшат, мне нравится как ты поработал и во всем разобрался! :)


7276. --
Ильшат
Ильшат
ответить


Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: создавать контролы кодом и назначать им свойства
добавил небольшую функцию, отображающую номер текущего уровня в комбобоксе с возможностью перехода сразу к конкретному уровню


Научился:  Дeлать измeнение рaзмеpов лaбиpинта чeрез текстовое поле. Дeлать пpямоугольнoе зaполнeниe лабиpинта выбранным объектом. Дeлать cчётчик ящиков и паркoвочныx меcт для ниx. Дeлать Тултипы для контролов
Трудности:  Возникли вопросы: при использовании текстового поля со свойством BorderStyle = Fixed3D, я надеялся увидеть "объёмный вариант", а на самом деле оно выглядит как Label. Хотелось бы подробнее узнать как программно перехватывать ошибки с помощью try - catch.
Возникли вопросы: при использовании текстового поля со свойством BorderStyle = Fixed3D, я надеялся увидеть "объёмный вариант", а на самом деле оно выглядит как Label. Хотелось бы подробнее узнать как программно перехватывать ошибки с помощью try - catch. Замечаний, практически, нет. Особенно понравилась реализация пpямоугольнoго зaполнeния лабиpинта выбранным объектом. Хочу предложить более простой способ использования функции Split(x) с разделителем, отличным от пробела: char dl = 'x'; string[] wh = toolStripTextBoxLabirintSize.Text.Split(dl);