Читать книгу Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 2: Программирование на Visual C# искусственного интеллекта (продолжение 1) - Валерий Алексеевич Карданов, Дарья Андреевна Самсонова, Наталья Сергеевна Кузьмина - Страница 5

Введение
11.3. Создание проекта

Оглавление

Создаём проект по обычной схеме: в VS в панели New Project в окне Project types выбираем тип проекта Visual C#, Windows, в окне Templates выделяем шаблон Templates, Visual C#, Windows Classic Desktop, Windows Forms App (.NET Framework), в окне Name записываем любое имя проекта, например, TicTacToe_variant1 и щёлкаем OK. Создаётся проект, появляется форма Form1 на экране в режиме проектирования.

C панели инструментов Toolbox переносим на форму элементы управления Control и устанавливаем для формы и элементов управления следующие свойства:

Form1 Form:

Property Name Property Value

Name frmTicTacToe

BackColor White

Text TicTacToe_variant1

FormBorderStyle Fixed Single

StartPosition CenterScreen

Size 478; 410


label1 Label:

Property Name Property Value

Name lblMessage

AutoSize False

BackColor Yellow

ForeColor Blue

BorderStyle Fixed3D

Font Style Bold

Font Size 24

Text X’s Move

TextAlign MiddleCenter

Location 12; 9

Size 272; 46


label2 Label:

Property Name Property Value

Name lblBox1

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 12; 66

Size 76; 76


label3 Label:

Property Name Property Value

Name lblBox2

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 110; 66

Size 76; 76


label4 Label:

Property Name Property Value

Name lblBox3

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 208; 66

Size 76; 76


label5 Label:

Property Name Property Value

Name lblBox4

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 12; 177

Size 76; 76


label6 Label:

Property Name Property Value

Name lblBox5

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 110; 177

Size 76; 76


label7 Label:

Property Name Property Value

Name lblBox6

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 208; 177

Size 76; 76


label8 Label:

Property Name Property Value

Name lblBox7

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 12; 287

Size 76; 76


label9 Label:

Property Name Property Value

Name lblBox8

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 110; 287

Size 76; 76


label10 Label:

Property Name Property Value

Name lblBox9

Font Microsoft Sans Serif; 48pt

AutoSize False

BorderStyle None

Font Size 48

Text X

TextAlign MiddleCenter

Location 208; 287

Size 76; 76


label11 Label (used as grid line – make very skinny):

Property Name Property Value

Name label11

AutoSize False

BackColor Blue

BorderStyle None

Text [blank]

Location 12; 151

Size 272; 13


label12 Label (used as grid line – make very skinny):

Property Name Property Value

Name label12

AutoSize False

BackColor Blue

BorderStyle None

Text [blank]

Location 12; 263

Size 272; 13


label13 Label (used as grid line – make very skinny):

Property Name Property Value

Name label13

AutoSize False

BackColor Blue

BorderStyle None

Text [blank]

Location 94; 66

Size 10; 298


label14 Label (used as grid line – make very skinny):

Property Name Property Value

Name label14

AutoSize False

BackColor Blue

BorderStyle None

Text [blank]

Location 192; 66

Size 10; 298


groupBox1 Group Box:

Property Name Property Value

Name grpPlayers

AutoSize False

BackColor Blue

Text [blank]

Location 295; 12

Size 156; 74


radioButton1 Radio Button:

Property Name Property Value

Name rdoTwoPlayers

AutoSize False

ForeColor White

Font Size 9

Text Two Players

Checked True

Location 13; 19

Size 91; 19


radioButton2 Radio Button:

Property Name Property Value

Name rdoOnePlayer

AutoSize False

ForeColor White

Font Size 9

Text Player – Computer

Location 13; 44

Size 137; 19


groupBox2 Group Box:

Property Name Property Value

Name grpFirst

AutoSize False

BackColor Blue

Text [blank]

Location 295; 92

Size 156; 74


radioButton3 Radio Button:

Property Name Property Value

Name rdoYouFirst

AutoSize False

ForeColor White

Font Size 9

Text You Go First

Checked True

Location 13; 19

Size 91; 19


radioButton4 Radio Button:

Property Name Property Value

Name rdoComputerFirst

AutoSize False

ForeColor White

Font Size 9

Text Computer Goes First

Location 13; 44

Size 137; 19


groupBox3 Group Box:

Property Name Property Value

Name grpComputer

AutoSize False

BackColor Blue

Text [blank]

Location 295; 172

Size 156; 74


radioButton5 Radio Button:

Property Name Property Value

Name rdoRandom

AutoSize False

ForeColor White

Font Size 9

Text Random Computer

Checked True

Location 13; 19

Size 130; 19


radioButton6 Radio Button:

Property Name Property Value

Name rdoSmart

AutoSize False

ForeColor White

Font Size 9

Text Smart Computer

Location 13; 44

Size 115; 19


button1 Button:

Property Name Property Value

Name btnStartStop

AutoSize False

Font Size 10

Text Start Game

Location 308; 263

Size 123; 36


button2 Button:

Property Name Property Value

Name btnExit

AutoSize False

Font Size 10

Text Exit

Location 308; 305

Size 123; 36


Форма приняла вид, показанный на рис. 11.8.


Рис. 11.8. Форма Form1 после проектирования.


Выделяем элемент управления lblBox1, в панели Properties для этого элемента на вкладке Events выделяем событие Click, щёлкаем стрелку и из выпавшего списка выбираем событие lblBox1_Click (рис. 11.9).

Аналогично поступаем для остальных элементов управления lblBox2, lblBox3, lblBox4, lblBox5, lblBox6, lblBox7, lblBox8, lblBox9.



Рис. 11.9. Выделяем lblBox1 и выбираем событие lblBox1_Click.


На рис. 11.12 слева – сетка для игры Tic Tac Toe. Элементы управления Label имеются в большом количестве. Элемент управления Label используется, чтобы сказать Вам ситуацию в игре. Метки используются для маркировки X и O в сетке (несмотря на то, что только X показывают в этом режиме проектирования). Тонкие элементы управления Label используются для формирования тёмно-синей сетки. Справа три средства управления GroupBox и две Button. Каждый GroupBox содержит два средства управления типа переключателя RadioButton, используемые для установления игровых опций. Эти два кнопочных управления Button используются, чтобы запустить и остановить игру и выйти из программы.

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

Дважды щёлкая по имени файла в панели Solution Explorer, любой файл можно открыть, изучить и редактировать.

Схема записи и вывода справочной информации, например, с правилами игры после выбора команды Справка (например, для элемента управления MenuStrip) уже была дана в другой главе, а также в книгах с сайта ZharkovPress.ru.



Рис. 11.10. Панели Solution Explorer (слева) и Properties (справа).

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 2: Программирование на Visual C# искусственного интеллекта (продолжение 1)

Подняться наверх