Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 5: Программирование искусственного интеллекта на Visual Basic (продолжение 1)
Шрифт:
16. Если выбираем No, появляется уже показанный выше интерфейс игры.
Теперь первый ход (загадывает слово) делает, например, тот игрок, который в предыдущей игре начинал вторым. Если в игре участвует несколько человек, то можно условиться, что победитель в предыдущей игре начинает первым.
17. Если выбираем Yes, игра закрывается. Для закрытия игры можно также в любой момент выбрать на форме значок Close.
18. Если игроку требуется вспомнить правила игры, то в меню Помощь он выбирает команду “Правила игры”, после чего появляется соответствующая форма (рис. 19.14).
Рис. 19.14.
Форма
На основании этих правил можно сформулировать другие правила, и любые правила ввести в эту справочную форму.
19.2. Создание проекта
Создаём проект по обычной схеме: в VS в панели New Project в окне Project types выбираем тип проекта Visual Basic, Windows, в окне Templates выделяем шаблон Windows Forms Application, в окне Name записываем любое имя проекта, например, HangMan и щёлкаем OK. Создаётся проект, появляется форма Form1 на экране в режиме проектирования (рис. 19.15). Оставляем по умолчанию или проектируем форму, как подробно описано в параграфе “Методика проектирования формы”. Например, в панели Properties в свойстве Font выбираем шрифт Times New Roman, 14, Bold.
C панели инструментов Toolbox переносим на форму (слева направо и сверху вниз) следующие элементы управления.
Надпись Label с любым именем Name (т.к. это имя не будет использоваться в программе) и текстом “1. Запишите слово:”.
Окно текста TextBox, для которого в панели Properties: записываем имя Name = Word_in, ограничиваем количество букв двадцатью MaxLenght = 20, скрываем буквы слова за звёздочками (как пароль) PasswordChar = *.
Надпись Label с любым именем Name (т.к. это имя не будет использоваться в программе) и текстом “2. Щёлкните:”.
Кнопка Button, для которой в панели Properties записываем имя Name = Done и текст Text = Старт.
Надпись LinkLabel, для которой в панели Properties записываем имя Name = check_answer (проверка ответа) и текст Text = Проверка.
Двадцать надписей Label, для которых в панели Properties записываем имена Name = Chr1, Chr2, Chr3, …, Chr20 (эти имена будут использоваться в программе) и текст Text во всех надписях – в виде символа подчёркивания “_”.
Рис. 19.15. Форма Form1 в режиме проектирования.
Двадцать надписей Label, для которых в панели Properties записываем имена Name = dash1, dash2, dash3, …, dash20 (эти имена будут использоваться в программе) и текст Text во всех надписях – в виде символа подчёркивания “_”.
Надпись Label с любым именем Name (т.к. это имя не будет использоваться в программе) и текстом “Таблица для 10 допустимых неправильных букв:”.
Ниже последней надписи проектируем таблицу из двух горизонтальных и трёх вертикальных линий из элементов управления типа PictureBox, для которых в панели Properties в свойстве BackColor выбираем чёрный цвет, например, ControlText.
В двенадцати ячейках этой таблицы размещаем двенадцать надписей Label, для которых в панели Properties записываем имена Name = f_chr1, f_chr2, f_chr3, …, f_chr12 (эти имена будут использоваться в программе) и без текста Text во всех первых 11 надписях. Чтобы выделить 11 ошибочных букв в этих 11 ячейках, в свойстве ForeColor этих 11 надписей задаём красный цвет Red. Только в последней надписи с именем Name = f_chr12 в свойстве Text записываем какой-либо символ, например, символ подчёркивания “_”, а в свойстве BackColor выбираем чёрный цвет, например, ControlText (тем самым, выделяя чёрный прямоугольник этой ячейки, как показано на рисунке).
Надпись Label с любым именем Name (т.к. это имя не будет использоваться в программе) и текстом “3. Угадывайте буквы слова:”.
Двадцать шесть (по числу букв в английском алфавите) кнопок Button, для которых в панели Properties записываем имена для букв английского алфавита, Name = A, B, C, D, Er, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z (эти имена будут использоваться в программе) и текст Text, соответствующий этим буквам (как показано на рисунке). Напомним, что язык Visual Basic нечувствителен к регистру букв, и строчную букву “e”, и прописную букву “E” этот язык воспринимает одинаково. Поэтому, чтобы не было конфликта имени “e”, как объекта класса System.EventArgs в параметре метода-обработчика щелчка кнопки, и имени кнопки Name = E, выше мы записали имя кнопки Name = Er.
На форме справа размещаем графический элемент управления PictureBox, для которого в панели Properties записываем имя Name = effects. За маркеры увеличиваем размеры элемента до Size = 125; 314. На этом элементе размещаем рисунок человечка (пока без головы) по стандартной схеме: в панели Properties (для этого элемента) в свойстве Image (рис. 19.16) щёлкаем кнопку с тремя точками, в появившейся панели Select Resource выбираем переключатель Local resource, щёлкаем кнопку Import, в появившейся панели Open находим (например, в папке с загруженными из Интернета файлами) и выделяем графический файл 2.jpg и щёлкаем кнопку Open (или дважды щёлкаем по имени этого файла). Отображение этого файла мы увидим на элементе PictureBox (см. рисунок).
Рис. 19.16. Панели SE и Properties.
Теперь на предыдущем элементе управления PictureBox на месте, где должна находиться голова человечка, размещаем следующий элемент управления PictureBox, для которого в панели Properties записываем или устанавливаем следующие свойства: Name = pic_sad, BackColor = ControlLightLight, SizeMode = StretchImage, Visible = False. За маркеры устанавливаем размеры элемента Size = 58; 46. На этом элементе размещаем рисунок хмурой головы человечка (типа смайлика) по стандартной схеме: в панели Properties (для этого элемента) в свойстве Image щёлкаем кнопку с тремя точками, в появившейся панели Select Resource выбираем переключатель Local resource, щёлкаем кнопку Import, в появившейся панели Open находим (например, в папке с загруженными из Интернета файлами) и выделяем графический файл sad_face.jpg и щёлкаем кнопку Open (или дважды щёлкаем по имени этого файла). Отображение этого файла мы увидим на элементе PictureBox.
На том же элементе управления PictureBox на месте, где должна находиться голова человечка, размещаем следующий элемент управления PictureBox, для которого в панели Properties записываем или устанавливаем следующие свойства: Name = pic_happy, BackColor = ControlLightLight, SizeMode = StretchImage, Visible = False. За маркеры устанавливаем размеры элемента Size = 58; 46. На этом элементе размещаем рисунок веселой головы человечка (типа смайлика) по стандартной схеме: в панели Properties (для этого элемента) в свойстве Image щёлкаем кнопку с тремя точками, в появившейся панели Select Resource выбираем переключатель Local resource, щёлкаем кнопку Import, в появившейся панели Open находим (например, в папке с загруженными из Интернета файлами) и выделяем графический файл happy_face.jpg и щёлкаем кнопку Open (или дважды щёлкаем по имени этого файла). Отображение этого файла мы увидим на элементе PictureBox (см. рисунок).