Литмир - Электронная Библиотека
A
A

На форме справа размещаем графический элемент управления PictureBox, для которого в панели Properties записываем имя Name = effects. За маркеры увеличиваем размеры элемента до Size = 125; 314. На этом элементе размещаем рисунок человечка (пока без головы) по стандартной схеме: в панели Properties (для этого элемента) в свойстве Image (рис. 19.16) щёлкаем кнопку с тремя точками, в появившейся панели Select Resource выбираем переключатель Local resource, щёлкаем кнопку Import, в появившейся панели Open находим (например, в папке с загруженными из Интернета файлами) и выделяем графический файл 2.jpg и щёлкаем кнопку Open (или дважды щёлкаем по имени этого файла). Отображение этого файла мы увидим на элементе PictureBox (см. рисунок).

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 5: Программирование искусственного интеллекта на Visual Basic (продолжение 1) - _14.jpg

Рис. 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 (см. рисунок).

Два последних элемента управления PictureBox со смайликами накладываем один на другого на месте головы нарисованного человечка. А программа будет показывать нам либо хмурый смайлик (при неправильной букве), либо веселый смайлик (при правильной букве).

Напомним, что, растягивая за маркеры элемент PictureBox, при помощи свойства SizeMode = StretchImage мы можем растягивать голову человечка на всю площадь этого элемента так, чтобы было посмешнее.

Переносим на форму элемент управления MenuStrip – выпадающее меню для команд и опций, сгруппированных по функциональности. Щёлкаем по этому элементу menuStrip1, расположенному ниже формы Form1 в режиме проектирования. На форме Form1 появляются окна с надписью Type Here (Печатайте здесь), в которые записываем команды на английском языке (приведённые далее в программе): Game, New Game, Exit; Help, How to, About. Теперь в панели Properties (для каждой команды этого элемента управления) в свойстве Text изменяем эти английские команды на русские, согласно рис. 19.17 – 19.18.

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 5: Программирование искусственного интеллекта на Visual Basic (продолжение 1) - _15.jpg
Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 5: Программирование искусственного интеллекта на Visual Basic (продолжение 1) - _16.jpg

Рис. 19.17. Команды левого меню. Рис. 19.18. Команды правого меню.

Если в игре применяются звуковые файлы, то их целесообразно разместить в одной папке с именем, например, Sounds. Для добавления в проект этой папки, в панели Solution Explorer выполняем правый щелчок по имени проекта, в контекстном меню выбираем Add, New Folder, в поле появившегося значка папки записываем имя папки и нажимаем клавишу Enter. Добавляем в эту папку звуковые файлы по стандартной схеме: выполняем правый щелчок по имени этой папки, в контекстном меню выбираем Add, Existing Item, в панели Add Existing Item в окне “Files of type” выбираем “All Files”, в центральном окне находим (например, в папке с загруженными из Интернета файлами) и с нажатой клавишей Ctrl выделяем имена файлов и щёлкаем кнопку Add. В панели Solution Explorer мы увидим эти файлы (см. рисунок выше).

Для ввода в проект новой формы (для правил игры) в меню Project выбираем Add Windows Form, в панели Add New Item оставляем заданные по умолчанию параметры и щёлкаем кнопку Add. В ответ VS выводит новую форму Form2 и добавляет в панель Solution Explorer новый пункт Form2.vb. Аналогично, как первую, проектируем вторую форму (рис. 19.18), за маркеры увеличиваем форму до размеров Size (420; 420). Вводим на эту форму элемент управления в виде окна TextBox, для которого в панели Properties в свойстве Multiline выбираем значение True (для многострочного текста). Ниже размещаем кнопку Button со свойством Text = Выход.

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 5: Программирование искусственного интеллекта на Visual Basic (продолжение 1) - _17.jpg

Рис. 19.18.

Форма Form2.

19.3. Код и запуск программы

Открываем файл Form1.vb (например, по схеме: File, Open, File) и в классе Form1 записываем следующие переменные и методы.

Листинг 19.1. Переменные и методы.

'Массив для загадываемого слова из 20 (и менее) букв

'с индексами 0,1,2,3,…,19:

Dim str(19) As String

Dim nums As Integer

На первой форме Form1 в режиме проектирования дважды щёлкаем по кнопке Button с именем для первой буквы используемого в данной игре английского алфавита Name = A (или в панели Properties для этого элемента на вкладке Events дважды щёлкаем по имени соответствующего события).

Появившийся шаблон метода после записи нашего кода принимает следующий вид.

Листинг 19.2. Метод-обработчик щелчка кнопки.

Private Sub A_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles A.Click

A.Enabled = False

nums = Len(Word_in.Text)

Try

str(0) = Mid(Word_in.Text, nums, 1)

str(1) = Mid(Word_in.Text, nums – 1, 1)

str(2) = Mid(Word_in.Text, nums – 2, 1)

str(3) = Mid(Word_in.Text, nums – 3, 1)

str(4) = Mid(Word_in.Text, nums – 4, 1)

str(5) = Mid(Word_in.Text, nums – 5, 1)

str(6) = Mid(Word_in.Text, nums – 6, 1)

str(7) = Mid(Word_in.Text, nums – 7, 1)

str(8) = Mid(Word_in.Text, nums – 8, 1)

str(9) = Mid(Word_in.Text, nums – 9, 1)

str(10) = Mid(Word_in.Text, nums – 10, 1)

str(11) = Mid(Word_in.Text, nums – 11, 1)

str(12) = Mid(Word_in.Text, nums – 12, 1)

str(13) = Mid(Word_in.Text, nums – 13, 1)

str(14) = Mid(Word_in.Text, nums – 14, 1)

str(15) = Mid(Word_in.Text, nums – 15, 1)

str(16) = Mid(Word_in.Text, nums – 16, 1)

str(17) = Mid(Word_in.Text, nums – 17, 1)

str(18) = Mid(Word_in.Text, nums – 18, 1)

str(19) = Mid(Word_in.Text, nums – 19, 1)

Catch ex As Exception

End Try

If Word_in.TextLength = 1 Then

If str(0) = "a" Then

Chr1.Text = "A"

End If

ElseIf Word_in.TextLength = 2 Then

If str(1) = "a" Then

4
{"b":"812364","o":1}