Создать приложение для windows которое имитирует игровой автомат со счастливыми числами

Аннотация: В этой лекции вы узнаете, как создать простой, но привлекательный графический интерфейс с помощью элементов управления из области элементов Visual Studio; как настраивать их поведение, изменяя свойства, и напишете код, который определит, что будет делать ваша программа

В этой лекции вы узнаете, как:

  • создать пользовательский интерфейс для новой программы;
  • настроить свойства для каждого объекта пользовательского интерфейса;
  • создать код программы;
  • сохранить и запустить программу;
  • создать исполняемый файл.

В среде Microsoft Visual Studio .NET имеются мощные инструменты для запуска программ и работы с ними. В Visual Studio также содержится все необходимое для создания с нуля приложений для Microsoft Windows. В этой лекции вы узнаете, как создать простой, но привлекательный графический интерфейс с помощью элементов управления из области элементов Visual Studio. Затем вы узнаете, как настраивать поведение этих элементов управления, изменяя их свойства, и напишете код, который определит, что будет делать ваша программа. В конце лекции вы узнаете, как сохранить и запустить вашу программу (игорный автомат в стиле Лас-Вегаса), и как скомпилировать исполняемый файл.

Что нового в Visual Basic .NET?

  • В среде разработки Visual Studio .NET частично изменились меню и панели инструментов, которые используются при создании программ. Например, в Visual Basic 6 имелись меню Format (Формат), Run (Запуск) и Add-Ins (Дополнительные модули), которые отсутствуют в Visual Studio. Большинство команд было перенесено в другие меню — например, команды меню Run (Запуск) вы найдете в меню Debug (Отладка).
  • Элемент управления CommandButton в Visual Studio .NET называется Button, и многие из его свойств и методов также изменились. Например, свойство Caption теперь называется Text.
  • Появились новые свойства и методы в элементе управления Label (надпись), старые также изменились. Например, у свойства TextAlign появились новые возможности по сравнению с его ранней версией — свойством Alignment.
  • Элемент управления Image удален из Visual Studio. Для вывода изображений теперь используется элемент управления PictureBox.
  • По сравнению с Visual Basic 6 в программах Visual Basic .NET стало больше кода, добавляемого автоматически. В частности, в верхней части каждой формы Visual Basic .NET добавляет блок кода, помеченный как «Код, автоматически созданный конструктором форм Windows». В этом блоке определяются важные характеристики формы, и он не должен изменяться (собственный код можно писать после этого блока кода.)
  • Visual Studio может создавать два типа исполняемых файлов вашего проекта — отладочную версию и окончательную (распространяемую) версию. Отладочные версии содержат отладочную информацию и используются при тестировании и отладке программы. Окончательные версии оптимизированы и имеют меньший размер, они создаются, когда разработка программы завершена.

«Семерка»: ваша первая программа на Visual Basic

Приложение для Windows, которое мы будем создавать в этой лекции, называется «Семерка» (Lucky Seven). Эта программа имитирует игровой автомат со «счастливыми» числами. У «Семерки» простой графический интерфейс, ее можно создать и скомпилировать в Visual Basic всего за несколько минут. Вот как будет выглядеть программа, когда вы ее закончите.

Примечание. Готовую версию «Семерки» можно найти в папке c:\vbnet03sbs\Гл.2\СемеркаОбразец\bin..

Шаги программирования

Графический интерфейс «Семерки» имеет две кнопки, три поля для показа «счастливых» чисел, цифровую фотографию, символизирующую выигрыши, и текст «Счастливая семерка». Чтобы сконструировать этот интерфейс, нужно создать семь объектов на форме Семерка, а затем изменить некоторые свойства в каждом из них. Затем нужно добавить код программы для кнопок Крутить и Выход, который обрабатывает нажатия пользователя на этих кнопках и генерирует случайные числа. Чтобы создать эту программу с самого начала, необходимо выполнить в Visual Basic три основных шага по разработке программы: создать интерфейс пользователя, настроить свойства и написать код программы. В таблице описан этот процесс для «Семерки».

Таблица
2.1.

Шаг программирования Число элементов
Создать графический интерфейс пользователя 7 объектов
Настроить свойства 12 свойств
Написать код программы 2 объекта

Богданов Илья Владимирович, группа ИСП–9–21

ОТЧЕТ О ПРАКТИЧЕСКОМ ЗАНЯТИИ №9
Тема: Проектирование и разработка графического интерфейса пользователя.

Цель: Получение навыков проектирования и разработки интерфейса пользователя.
Ход работы
Задание 1: Настроить среду разработки Visual Studio. Создать приложение для Windows, которое имитирует игровой автомат со «счастливыми» числами. Программа должна иметь следующий интерфейс (рисунок 16).

При нажатии на кнопку «Крутить» должны генерироваться три случайных числа от 0 до 9. Если хотя бы одно из них равно семи, на форме должны появляться надпись «Счастливая семерка» и картинка с изображением человека, платящего игроку деньги при выигрыше. При нажатии на кнопке «Выход» программа должна завершать работу. Решение сохранить под именем «Игра». Создать исполняемый файл приложения.

Добавить в созданную форму метку и организовать отображение на ней процента выигрышей по отношению к общему числу нажатий на кнопку «Крутить».

Добавить в программу оператор Randomize для того, чтобы программа при каждом запуске выдавала новую последовательность случайных чисел.

Создано приложение в визуальной среде разработки JetBrains Rider. При нажатии кнопки Крутить, генерируются три случайных числа, если одно число равно 7, то отображается картинка, производится расчет общего числа выигрышей к числу всех игр и отображается в процентах. При нажатии кнопки Выход, программа закрывается.

Результат работы представлен на рисунке 1.

Рисунок 1 – Программа 1
Исходный код представлен ниже:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace RKIS_PR9._1
{
public partial class Form1 : Form
{
private int tryings = 0;
private int wins = 0;
public Form1()
{
InitializeComponent();
}

private void button2_Click(object sender, EventArgs e)
{
Environment.Exit(0);
}

private void button1_Click(object sender, EventArgs


e)
{
Random rand = new Random();
int number1 = rand.Next(0, 10);
int number2 = rand.Next(0, 10);
int number3 = rand.Next(0, 10);

label1.Text = number1.ToString();
label2.Text = number2.ToString();
label3.Text = number3.ToString();

tryings += 1;
if (number1 == 7 || number2 == 7 || number3 == 7)
{
label4.Visible = true;
pictureBox1.Visible = true;
wins += 1;
}
else
{
label4.Visible = false;
pictureBox1.Visible = false;
}

statusBar1.Text = $»Процент выйгрыша = {(double)wins*100/tryings}%»;
}
}
}
Задание 2: Создать приложение для Windows «Продажи онлайн», которое позволяет выбрать для заказа компьютер, офисную технику и периферийные устройства с выводом в форму изображения выбранного оборудования, указать способ оплаты и желаемую дату поставки. Возможные способы оплаты: рубли, доллары США, английские фунты. При выборе способа оплаты должно появляться его символическое изображение. Пользователь, выбрав товары для заказа, вводит название фирмы. Рекомендуемый интерфейс приложения приведен на рисунке 17.

Решение сохранить под именем «Продажи». Создать исполняемый файл приложения.

Добавить в список офисной техники «МФУ» и добавить еще один объект

PictureBox для отображения рисунка МФУ. Соответствующим образом изменить программный код.

Добавить в способы оплаты «Чек».

Создано приложение по заданию. Программа позволяет выбрать тип компьютера, выбрать офисную технику, периферию, способ оплаты, называние фирмы, желаемую дату поставки, при выборе компонентов, программа отображает выбранные компоненты в виде фотографий. При нажатии кнопки Выход, программа закрывается.

Результат работы представлен на рисунке 2.

Рисунок 2 – Программа 2
Исходный код программы:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace RKIS_PR9._2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
comboBox1.SelectedIndex = 0;
}

private


void groupBox3_Enter(object sender, EventArgs e)
{
}

private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
pictureBox1.ImageLocation = «PC.jpg«;
}

private void button1_Click(object sender, EventArgs e)
{
Environment.Exit(0);
}

private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
pictureBox1.ImageLocation = «mac.jpg«;
}

private void radioButton3_CheckedChanged(object sender, EventArgs e)
{
pictureBox1.ImageLocation = «laptop.jpg«;
}

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
CheckBox checkBox = (CheckBox)sender;
if (checkBox.Checked)
pictureBox2.ImageLocation = «auto.jpg«;
else
pictureBox2.ImageLocation = null;
}

private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
CheckBox checkBox = (CheckBox)sender;
if (checkBox.Checked)
pictureBox3.ImageLocation = «calc.png«;
else
pictureBox3.ImageLocation = null;
}

private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
CheckBox checkBox = (CheckBox)sender;
if (checkBox.Checked)
pictureBox4.ImageLocation = «copy.jpg«;
else
pictureBox4.ImageLocation = null;
}

private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
CheckBox checkBox = (CheckBox)sender;
if (checkBox.Checked)
pictureBox5.ImageLocation = «mfu.jpg«;
else
pictureBox5.ImageLocation = null;
}

private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
ListView.SelectedIndexCollection selectedIndices = listView1.SelectedIndices;
if (selectedIndices.Count > 0)
{
int selectedIndex = selectedIndices[0];
switch (selectedIndex)
{
case 0:
pictureBox6.ImageLocation = «hdd.jpg«;
break;
case 1:
pictureBox6.ImageLocation = «print.jpg«;
break;
case 2:
pictureBox6.ImageLocation = «sa.jpg«;
break;
}
}
}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int selectedIndex = comboBox1.SelectedIndex;
switch (selectedIndex)
{
case 0:
label5.Text = «»;
break;
case 1:
label5.Text = «\u20BD«;
break;
case 2:
label5.Text = «\u0024″;
break;
case 3:
label5.Text = «\u00A3″;
break;
case 4:
label5.Text = «»;
break;
}
}
}
}
Вывод: Получены навыки проектирования и разработки интерфейса пользователя.


  1. Задание на
    разработку проекта Проект-4.1.7-1

Создать
приложение на VB
2008
с
именем Проект-4.1.7-1,
которое
должно
имитировать работу игрового
автомата
,
генерирующего три счастливых числа.
Если хотя
бы одно из чисел равно 7,
то считается, что играющий выиграл [8].

Проект-4.1.7-1
должен
иметь простой интерфейс пользователя
(рис.
4.1.7-1):

  • две
    Кнопки
    управления;

  • три
    Поля,
    отображающие
    случайные числа;

  • один
    Рисунок,
    отмечающий

    выигрыш;

  • один
    Текст
    «Проект-4.l.7-1».

Получить
эти элементы
можно, создав на
Форме
проекта
Проект-4.1.7-1
семь
объектов, а затем изменить некоторые
из свойств каждого объекта.

После
создания интерфейса добавить код
программы для
кнопок

Играть
и
Конец
игры,
который
обрабатывает
щелчки пользователя на этих кнопках.

Рис. 4.1.7-1. Интерфейс
пользователя проекта Проект-4.1.7-1

  1. Разработка
    приложения

  1. Создание
    нового проекта:

  1. Запустить
    VS
    2008
    .

  2. Выполнить
    команду Создать
    проект (New Project)

    элемента главного меню Файл
    (File
    ).

  3. На
    экране появится диалоговое окно Создание
    проекта (New Project).

  4. Выбрать
    шаблон Windows
    Application
    для типа проектов Visual
    Basic
    Windows
    в диалоговом окне Создание
    проекта (New Project).

    Ввести
    в текстовом поле Имя
    (Name)

    нижней части диалогового окна Создание
    проекта (New Project)

    имя проекта Проект-4.1.7-1.

  5. Щелкнуть
    на кнопке ОК
    диалогового
    окна Создание
    проекта (New Project).

VS
2008

присвоит проекту имя Проект-4.1.7-1

и отобразит основное окно
VS
2008

с различными панелями, среди которых
присутствует окно
Конструктора форм (Designer)
с
пустой формой Форма1
(Form1).

Эта форма будет использоваться для
создания интерфейса пользователя.

  1. Создание
    интерфейса пользователя:

  1. Изменить
    размер формы, для этого необходимо
    поместить указатель мыши над нижним
    правым углом формы так, чтобы он изменился
    и принял форму указателя изменения
    размера, а затем перетащить этот угол
    так, чтобы увеличить размер формы для
    размещения на ней объектов проекта.
    При изменении размера формы в окне
    Конструктора
    форм (Designer)

    могут появиться полосы прокрутки,
    которые позволяют получить доступ ко
    всей созданной форме.

Задать
размер формы, примерно как показано на
рис. 4.1.7-2.

Чтобы
увидеть всю форму без помех, если это
необходимо, можно изменить размер других
панелей инструментов или закрыть их.

  1. Добавить
    на форму объект Кнопка1,
    для чего дважды щелкнуть в окне панели
    Панель
    элементов (ToolBox)

    на Button
    (Кнопка)
    .
    VS
    2005

    создаст на форме объект кнопки с
    размерами по умолчанию и именем Button1.
    Причем объект новой кнопки выделен и,
    вокруг него имеются манипуляторы
    изменения размера.

Необходимо
обратить внимание на это название кнопки
— оно встретится при написании кода
программы. Когда VB
2008

находится в режиме конструктора, объекты
на форме перемещаются с помощью
перетаскивания их мышью, а их размеры
изме­няются с помощью манипуляторов
изменения размера.

Необходимо
попрактиковаться в перемещении и
изменении размера кнопки.

  1. Добавить
    на форму второй объект Кнопка2,
    для чего необходимо щелкнуть (теперь
    только один раз) в окне панели Панель
    элементов (ToolBox)

    на объекте Button,
    а затем переместить указатель мыши в
    область формы Form1.
    Указатель мыши примет форму перекрестия
    с пиктограммой кнопки. Перекрестие
    предназначено для того, чтобы нарисовать
    прямоугольную фигуру кнопки на форме,
    и этот метод используется как альтернатива
    двойному щелчку, создающему элемент
    управления с размером по умолчанию.

Перетащить
указатель вниз и вправо. Чтобы завершить
образование второй кнопки, необходимо
отпустить кнопку и посмотреть на ее
привязку к форме.

Изменить
размер объекта кнопки так, чтобы она
стала такого же размера, как и первая
кнопка, а затем переместить ее на форме,
расположив ниже Кнопка1.
В любой момент можно удалить объект и
начать заново — выбрав этот объект на
форме, а затем нажав на клавишу <Del>.

Попрактикуйтесь
в создании и удалении объектов интерфейса
пользователя. Форма должна выглядеть
примерно так, как показано рис. 4.1.7-2.

Рис.
4.1.7-2. Форма Form1
с объектами Button1
и
Button2

  1. Добавить
    на форму числовые надписи, для чего
    дважды щелкнуть мышью в окне панели
    Панель
    элементов (ToolBox)

    на элементе управления Надпись
    (Label).

VS
создаст на форме экземпляр объекта
Label1.

Необходимо
перетащить элемент Label1
вниз от двух объектов кнопок.

  1. Создать
    второй объект надписи, дважды щелкнув
    мышью в окне панели Панель
    элементов (ToolBox)

    на элементе управления Надпись
    (Label).
    VS
    2008

    создаст на форме элемент Label2.

  2. Создать
    третий объект надписи Label3,
    снова дважды щелкнув мышью на элементе
    управления Label,
    чтобы создать третий объект надписи
    Label3.

  3. Создать
    четвертый объект надписи Label4
    таким же образом.

  4. Переместить
    третий и четвертый объекты надписей
    вправо от второго, оставив между этими
    тремя надписями небольшое расстояние,
    так как при работе программы они будут
    использоваться для отображения больших
    цифр.

Форма
будет иметь вид примерно такой, как
показано на рис. 4.1.7-3. Если объекты
надписей выглядят не вполне правильно,
то вы можете переместить их.

Рис. 4.1.7-3. Форма
Form1
с элементами управления Button
и
Label

  1. Добавить
    на форму рисунок, для этого необходимо
    щелкнуть в окне панели
    Панель
    элементов (ToolBox)

    на элементе управления Изображение
    (PictureBox.)

Используя
Указатель рисования элемента управления,
необходимо создать на форме большой
прямоугольник, расположенный ниже
второй и третьей надписей.

Область
рисунка должна выглядеть примерно так,
как на рис. 4.1.7-4.

Рис.
4.1.7-4. Форма
Form1
с элементами управления Button,
Label
и
PictureBox

Этот
объект в программе будет называться
PictureBox1.
Это имя будет использоваться в дальнейшем
при написании кода программы.

  1. Установка
    свойств объектов

Свойства
изменяются при помощи выбора объектов
на форме и изменения их значений в
окне Свойства
(
Properties).

  1. Установить
    свойства первой кнопки, для этого
    щелкнуть на кнопке Button1.

Кнопка
выделится и будет окружена манипуляторами
изменения размера.

Затем
необходимо сделать щелчок на строке
заголовка окна Свойства
(Properties).

Если
окно Свойства
(Properties)

скрыто, щелкните на команде Свойства
(Properties)

элемента главного меню Вид
(View)

или нажмите на клавишу <F4>.
Изменить (если требуется) размер окна
Свойства
(Properties)

так, чтобы в нем было достаточно места
для отображения имен свойств и их текущих
значений.

Когда
вы привыкнете устанавливать свойства,
то сможете использовать окно Свойства
(Properties)

без увеличения его размеров.

Окно
Свойства
(Properties)

содержит список значений свойств для
первой кнопки Button1.
Они включают значения для цвета фона,
текста, высоты шрифта и ширины кнопки
и др. Так как имеется много свойств, VS
2008

организует их в категории и отображает
в виде структуры. Если имеется желание
увидеть свойства из какой-то категории,
необходимо щелкнуть на знаке «плюс»
(+) рядом с названием категории.

Прокрутить
список окна Свойства
(Properties)

так, чтобы увидеть свойство Text,
расположенное в категории Внешний
вид (Appearance)
).

Дважды
щелкнуть мышью в окне Свойства
(Properties)

в левом столбце свойства Text.
В окне Свойства
(Properties)

будет выделено текущее значение
свойства Text
Button1»).

Необходимо
ввести текст Играть
и
нажать <Enter>.

В окне
Свойства
(Properties)

свойство Text
изменит свое значение на «Играть»,
и
этот же текст появится на самой кнопке
формы.

  1. Установить
    свойства второй кнопки, выделив вторую
    кнопку Button2
    другим способом. Для этого необходимо
    раскрыть список Объект
    (Object)

    в верхней части окна Свойства
    (Properties)
    .

Появится
список объектов интерфейса программы
(рис. 4.1.7-5).

Рис.
4.1.7-5. Список объектов Form1

В этом
списке щелкнуть на Button2
из списка всех используемых элементов
управления System.Windows.Forms.

В окне
Свойства
(Properties)

появятся значения свойств второй
кнопки, а VS
2008

выделит Button2
на
форме.

Дважды
необходимо щелкнуть мышью на текущем
свойстве Text
Button2»)
и ввести текст «Конец
игры
»,
а затем нажать клавишу <Enter>.

Название
второй кнопки формы изменится на «Конец
игры
».

Использование
списка Объект
(Object
)
является удобным способом переключения
между объектами проекта. Можно
переключаться между объектами формы,
просто щелкая на них.

  1. Установить
    свойства числовых надписей, для этого
    щелкнуть на надписи Label1,
    нажать на клавишу <Shift>
    и, не отпуская ее, щелкнуть на Label2
    и Label3
    надписях,
    а затем отпустить клавишу <Shift>.

Вокруг
каждой из надписей, на которых щелкнули,
появятся пря­моугольники выделения
и манипуляторы изменения размера. Теперь
необходимо изменить свойства TextAlign,
BorderStyle

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

в категории Appearance.
Необходимо также установить свойство
Autosize
в значение False
с тем, чтобы можно было вручную изменить
размер надписей. Свойство Autosize
расположено в категории Layout.

Обратите
внимание, когда выделяется более одного
объекта, в окне Свойства
(Properties)

отображаются только те свойства, которые
могут быть изменены для всей группы
выделенных объектов.

В окне
Свойства
(Properties)

щелкнуть на свойстве Autosize,
а затем щелкнуть на стрелке, появившейся
справа от свойства.

Установить
свойство Autosize
в значение False
так, чтобы можно было вручную изменить
размер.

Щелкнуть
на свойстве TextAlign,
а затем щелкнуть на стрелке справа.

Появится
список, содержащий набор вариантов
выравнивания текста; эти настройки
позволяют различным образом выравнивать
текст в рамках объекта.

Щелкнуть
на варианте центрирования — MiddleCenter.

Свойство
TextAlign
для всех выделенных надписей изменится
и примет значение MiddleCenter.

Щелкнуть
на свойстве BorderStyle
, а затем на стрелке справа.

В
списке появятся доступные значения
(None,
FixedSingle

и Fixed3D).

Щелкнуть
в этом списке на FixedSingle,
чтобы добавить вокруг каждой надписи
тонкую рамку.

Щелкнуть
на свойстве Font,
а затем на кнопке многоточия (кнопка с
тремя точками, которая расположена
рядом с текущей настройкой шрифта).

Появится
диалоговое окно Шрифт
(Font
).

Необходимо
изменить шрифт на Times
New Roman
,
стиль шрифта – на Жирный,
а его размер — на 24,
а затем нажать на ОК.

Отображаемый
текст надписей будет иметь выбранный
шрифт, стиль и размер.

Теперь
необходимо изменить текст для всех трех
надписей на цифру 0
— хороший заполнитель для цифр, которые
будут выводиться в этих полях во время
игры.

Щелкнуть
на пустой области формы, чтобы снять
выделение со всех трех надписей, а затем
щелкнуть на Label1.

Дважды
щелкнуть мышью на свойстве Text,
ввести 0,
а затем нажать <Enter>.

Текст
объекта Label1,
будет содержать 0.
Код программы будет помещать в это
свойство случайное число.

Далее
необходимо изменить текст третей и
четвертой надписей формы так, чтобы он
тоже содержал 0.

Далее
необходимо переместить и изменить
размер надписей так, чтобы между ними
было нормальное расстояние.

Форма
выглядит примерно так, как показано на
рис. 4.1.7-6.

Рис.
4.1.7-6. Форма
Form1
с элементами управления Button,
Label
и
PictureBox

и соответствующими надписями

  1. Установить
    свойства описательной надписи, для
    этого щелкнуть на объекте надписи
    Label1
    формы. В окне Свойства
    (Properties)

    изменить свойство Text
    на значение — Проект-4.1.7-1
    Иванова
    И.И
    .

Щелкнуть
на свойстве Font,
а затем на кнопке многоточия.

Использовать
диалоговое окно Шрифт
(Font
)
для изменения шрифта на Arial,
стиля шрифта на жирный и его размера на
18.
Затем щелкните на ОК.
Шрифт надписи объекта Label4
обновится, и благодаря тому, что свойство
Autosize
объекта установлено в значение True,
надпись автоматически изменит размер
так, чтобы в нее поместился шрифт большего
размера. Далее необходимо в окне
Properties
(Свойства)

щелкнуть на свойстве ForeColor,
а затем щелкнуть на стрелке во второй
колонке.

VS
2008

для установки цвета переднего плана
(цвета текста) объекта надписи отобразит
список, содержащий вкладки Польз.
(Custom)
,
Web
и Системные
(System).

Вкладка Польз.
(Custom)

предлагает многие из цветов, доступных
в вашей системе.

Щелкнуть
на пурпурном
(purple)

цвете на вкладке Польз.
(Custom
).

Цвет
текста надписи изменится на пурпурный
цвет.

  1. Установить
    свойства области изображения, для этого
    щелкнуть на объекте области изображения
    PictureBox1
    формы, щелкнуть в окне Свойства
    (Properties)

    на свойстве SizeMode
    категории Поведение
    (Behavior)
    ,
    щелкнуть на стрелке справа, а затем
    щелкнуть на Stretchmage
    (Растянуть изображение
    ).

Установка
SizeMode
в значение Stretchmage
(Растянуть изображение
)
до открытия файла изображения заставляет
VS
2008

изменить размер изображения так, чтобы
он в точности совпал с размерами области
изображения

Щелкнуть
мышью в окне Свойства
(Properties)
на
свойстве Image
категории Внешний
вид (
Appearance),
а затем щелкнуть на кнопке многоточия
во втором столбце. В результате появится
диалоговое окно Выбор
ресурса (Select Resource).

Щелкнуть
на опции Локальный
ресурс (Local Resource)
,
а затем щелкнуть на кнопке Импорт
(Import).

В
диалоговом окне Открыть
(Open
)
перейти в папку, например в
Проект-4-1-7-1.
Эта папка содержит рисунок Mtuci.gif.
Выделить Mtuci.gif
затем щелкнуть на Open.
В диалоговом окне Select
Resource

появится рис. 4.1.7-7.

Щелкнуть
ОК.

Рисунок
Mtuci.gif
загрузится в область вывода изображений.

Рис.
4.1.7-7. Диалоговое окно Select
Resource

  1. Изменить
    заголовок формы, щелкнув в области
    Форма1
    (Form1),

    а затем в правом столбце свойства Text
    окна Свойства
    (Properties)

    и ввести текст
    «Проект-4.1.7-1».

Завершенная
форма должна выглядеть, как на рис
4.1.7-1.

  1. Написание
    программного кода

Теперь
можно написать программный код для
проекта Проект-4.1.7-1.
Так
как
большинство созданных ранее объектов
уже «знают», как им надо работать, при
запуске программы
они будут готовы к приему ввода от
пользователя и его обработке. Встроенная
функциональность объектов является
одной из самых сильных сторон VS
2008
и
VB
2008
-после
того как объекты будут размещены на
форме и их свойства будут установлены,
они готовы к запуску без дополнительного
программирования (визуальное
программирование). Однако основа игры
Счастливая
семерка

программный код, который реализует
алгоритм вычисления случайных значений,
отображает их в соответствующих полях
и определяет выигрыш
— в программе все еще отсутствует. Эта
программная логика может быть встроена
в
приложение только с помощью операторов
языка программирования VB
2008
-программного
кода, который четко говорит, что программа
должна делать на каждом шаге ее
выполнения. Так как программой управляют
кнопки Играть
и
Конец
игры,
программный
код
нашего проекта должен быть связан именно
с этими кнопками. Для ввода и редактирования
операторов программы на VB
2008
предназначено
окно Редактор
программного
кода (
Code
Editor).

  1. Представить
    значение свойств в таблице.

Свойства,
которые были установлены для проекта
Проект-4.1.7-1
в
пошаговом режиме, сведем в таблицу
4.1.7-2. Таблица 4.1.7-1

Объект

Свойство

Значение

Button1

Text

»
Играть»

Button2

Text

«Конец
игры»

Label1, Label2, Label3

Autosize

False

BorderStyle

Fixed
Single

Font

Times
New Roman, Bold, 24

Text

«0»

TextAlign

MidleCetnter

Label4

Text

Проект-4.1.7-1-Иванова
И.И.

Font

Ariel, Bold, 18-point

ForeColor

Purple

PictureBox1

Image

«d:\VB2008-Информатика-курс-1.Mtuci.gif»

SizeMode

Stretchmage

Visible

False

  1. Дописать
    код программы для обработки события
    нажатия кнопки Button2,
    используя окно Редактор
    кода (Code Editor
    ).
    Дважды щелкнуть мышью на кнопке Конец
    игры

    приложения.

В
основном окне VS
2008

появится окно панели Редактор
кода (Code Editor),

имеющий
вид документа с вкладкой и показанный
на рис. 4.1.7-8.

Внутри
окна Редактора
кода (Code Editor)

находятся строки кода, связанного с
текущей формой. Операторы программы,
которые используются совместно для
выполнения некоторого действия, обычно
группируются в программные конструкции,
называемые процедурами. Обычным типом
процедуры является процедура Sub,
называемая процедурой-подпрограммой.
Процедуры Sub
в первой строке содержат ключевое слово
Sub
и заканчиваются End
Sub.
Обычно процедуры выполняются при
определенных обстоятельствах, например,
таких, как щелчок по кнопке или вызов
специального оператора. Когда процедура
ассоциирована с конкретным объектом и
событием, она называется обработчиком
события

или событийной
процедурой
.

При
двойном щелчке мышью на кнопке Конец
игры

VB
2008

автоматически добавляет первую и
последнюю строки процедуры события
Button2_Click(
)
, как показано на рис. 4.1.7-8. (Первая строка
перенесена на следующую строку, чтобы
не вылезти за поля.) На рис.4.1.7-8 видно,
что в окне Редактор
кода (Code Editor)

есть и другие строки кода, которые VS
2008

добавила для определения важных
характеристик формы.

Тело
процедуры, которое находится между
заголовком процедуры и оператором,
завершающим процедуру – End
Sub,
будет исполняться каждый раз, когда
пользователь активизирует элемент
интерфейса, ассоциированный с этой
процедурой. В данном случае событие —
это щелчок мышью на кнопке Button2,
но как будет показано далее, это может
быть и другой тип события.

Ввести
оператор языка
End,
а

затем нажать на клавишу со стрелкой
вниз.

После
ввода оператора буквы становятся синими
и создаются отступы, что указывает, что
VB
2008

распознал End
как одно из нескольких сотен
зарезервированных — или ключевых слов
языка Visual
Basic
.
Ключевое слово End
используется для остановки программы
и удаления с экрана ее формы. В данном
случае End
также является законченным оператором
программы, исполняемой компилятором
VB
2008

— частью VS
2008
,
обрабатывающей и выполняющей анализ
каждой строки исходного кода VB
2008

и объединяющей результаты с другими
ресурсами с целью создания исполняемого
файла. Все операторы программы должны
следовать грамматическим правилам
компилятора. В
VS 2008

операторы программ могут состоять из
ключевых слов, свойств, имен объектов,
переменных, чисел, специальных символов
и других значений. При вводе операторов
программы и внесении других изменений
окно Редактор
кода (Code Editor)

выполняет многие задачи, связанные с
форматированием, включая настройку
отступов, пробелов и добавление
необходимых скобок. Точное написание,
порядок и расположение пробелов оператора
программы называется синтаксисом
оператора
.

Рис.
4.1.7-8. Программный код проекта Проект-4.1.7-1

При
нажатии на клавишу «стрелка
вниз»

оператор End
был сдвинут так, чтобы он был отделен
от операторов Private
Sub и
End.
Эта схема форматирования является одним
из соглашений программирования и
предназначена для того, чтобы программы
выглядели ясно и читаемо. Соглашения
относительно того, как организуется
код в программе, часто называется стилем
программирования
.

Теперь,
когда написан код, связанный с кнопкой
Конец
игры
,
необходимо написать код для кнопки
Играть.

  1. Написать
    программный код, который будет выполняться
    при нажатии кнопки Играть,
    то
    есть
    событийную процедуру
    для
    кнопки

    Button1.

Чтобы
отобразить форму, щелкнуть в окне
Обозреватель
решений (Solution Explorer)

на кнопке Конструктор
(View
Designe
r).
В режиме Редактор
программного кода (Code Editor)

форма, с которой производится работа,
не отображается. Кнопка Конструктор
(View Designer)

является одним из тех механизмов, которые
используются для того, чтобы снова
вывести форму на экран. Также можно
щелкнуть на вкладке Form1.vb
[Design].

Дважды
щелкнуть мышью на кнопке Играть.

Через
некоторое время появится окно Редактор
программного кода (Code Editor),

и рядом с процедурой события, связанной
с кнопкой Button2, появится процедура
события, ассоциированная с кнопкой
Button1.

Хотя
текст этой кнопки был изменен на «Играть»,
ее имя в программе осталось Button1.
(Имя и текст элемента интерфейса могут
быть различными для удобства
программирования.) Каждый объект может
иметь несколько связанных с ним процедур
— по одной для каждого распознаваемого
события.

Между
операторами Private
Sub Button1_Click( )
и End
Sub
необходимо ввести строки программы,
показанные на рис. 4.1.7-8.

После
ввода каждой строки необходимо нажимать
<Enter>,
а
для создания отступа необходимо нажать
на <Таb>
и следить за вводом операторов программы
в точности так, как они напечатаны на
рис. 4.1.7-8. (При вводе длинных строк
Редактор
программного кода (Code Editor)

будет прокручивать экран влево.) Если
будет сделана ошибка, которую обычно
легко определить по подчеркиванию
волнистой лини­ей, удалите неверную
строку и введите ее снова.

При
вводе кода программы VB
орматирует
ее текст и отображает различные части
программы различными цветами, которые
помогают распознавать различные
элементы. В момент ввода свойства
отображается список, содержащий все
допустимые свойства объекта, так что
вместо набора свойства вручную можно
дважды щелкнуть на свойстве мышью. Если
VB
отображает сообщение об ошибке, то
оператор, скорее всего, введен с ошибкой.
Сверьте строку с текстом в пособии,
сделайте необходимые исправления и
продолжайте набирать. Также можете
удалить всю строку и начать вво­дить
ее заново. Кроме того, VB
2008

может автоматически добавлять необходимый
код.

Когда
закончите ввод операторов, окно Редактор
программного кода (Code Editor)
должно
выглядеть так, как показано на рис.
4.1.7-8.

  1. Сохранить
    введенный программный код, щелкнуть
    на команде Сохранить
    все (Save All)

    элемента главного меню Файл
    (File).

Команда
Сохранить
все (Save All)

сохраняет все файлы, входящие в проект
– собственно файл проекта, файл формы,
все модули кода и все связанные с
приложением компоненты. Если это
первое сохранение проекта, появится
диалоговое окно Сохранить
проект (Save Project),

запрашивающее имя и место для сохранения
проекта. Если VS

настроена так, чтобы запрашивать место
сохранения проекта при его создании,
то сейчас диалогового окна Сохранить
проект

вы не увидите — VS
2008

просто сохранит все изменения.

Щелкнуть
на кнопке Обзор
(Browse)

справа от текстового поля Место-
положение (Location)

и выбрать место для сохранения файлов.

Необходимо
использовать папку (место, где находятся
файлы лабораторных работ, созданные
студентами). Если необходимо сохранить
только элемент, с которым в настоящий
момент работаете (форму, модуль кода
или что-либо еще), то используется команда
Сохранить
(Save),

также находящаяся в меню Файл
(File
).
Если необходимо сохранить текущий
элемент с другим именем, то используется
команда Сохранить
как (Save As).

  1. Обсудим
    программный код процедуры обработки
    события нажатие кнопки Играть,
    используя окно Редактор
    программного кода (Code Editor).

Процедура
Button1_Click(
)
выполняется тогда, когда пользователь
щелкает на кнопке Играть
формы Form1.
Эта процедура содержит несколько
довольно сложных операторов. Процедура
Button1_Click(
)
выполняет три задачи:

  • скрывает
    рисунок;

  • создает
    три случайных числа, отображаемые в
    числовых надписях;

  • когда
    появляется цифра 7,
    она отображает рисунок.

Сокрытие
рисунка выполняется с помощью следующей
строки:

PictureBoxl.Visible=False

скрыть
картинку

Эта
строка состоит из двух частей: программного
оператора и комментария. Оператор
программы (PictureBox1.Visible=False)
устанавливает свойство Visible
объекта области вывода изображения
(PictureBox)
равным False
(это одно из двух возможных значений).
Вы, возможно, помните, что только что
установили это свойство равным False
при помощи окна Свойства
(Properties).
Сейчас
это снова делается в коде программы,
так как первая задача — это «вращение»,
и фото, которое может остаться на экране
после предыдущей игры, требуется убрать.
Так как это свойство будет изменено во
время работы, а не во время разработки,
нужно установить его с помощью кода
программы. Это удобная функция VB.

Вторая
часть первой строки (часть, отображаемая
на экране зеленым цветом) называется
комментарием.
Комментарии
— это описательные пояснения, включаемые
в программный код после символа апострофа
(‘). Программисты используют комментарии
для описания действия операторов
программы. VB
при
запуске программы не обрабатывает эти
пояснения; они существуют только для
документирования того, что делает
программа. При написании программы
часто придется использовать комментарии,
чтобы оставить легко воспринимаемые
записи о том, что же вы сделали. Следующие
три строки выполняют вычисление случайных
чисел. С помощью специальных действий
можно на самом деле заставить VB

сгенерировать непред­сказуемые числа
– другими словами, можно создать
случайные числа для лотерей, игры в
кости или других статистических задач.
Функция Rnd(
)
в каждой из строк создает случайное
число в диапазоне между 0 и 1 (число с
десятичной точкой и несколькими знаками
после нее), а функция Int(
)
возвращает целую часть результата
произведения этого случайного числа
на 10. Это вычисление дает программе
случайные числа между 0 и 9 — именно то,
что требуется для нашего приложения
игрового автомата.

Label1.Text=CStr(Int(Rnd(
) * 10))

выбрать числа

Затем
в коде требуется преодолеть небольшое
препятствие. Вы должны скопировать эти
три случайных числа в три поля надписей
на форме, но сначала числа с помощью
функции CStr(
)
(преобразование в строку) должны быть
преобразованы в текст. Обратите внимание,
как CStr(),
Int()
и Rnd()
объединены
вместе в одном операторе программы –
они работают совместно и дают результат
аналогично математической формуле.
После вычисления и преобразования
значения присваиваются свойствам Text
первых трех надписей формы, и в результате
этого числа отображаются в этих трех
надписях жирным шрифтом Times
New Roman

с размером 24
пункта. Последняя группа операторов
программы проверяет, не равняется ли 7
одно из случайных чисел. Если одно или
несколько из этих чисел равно 7,
то программа отображает изображение,
а звуковой сигнал свидетельствует о
победе:

‘если
одна из цифр-7, то отобразить картинку
и издать звук

If
(Label1.Text =
«7»)
Or
(Label2.Text =
«7»)
_

Or
(Label3.Text =
«7»)
Then

PictureBoxl.Visible
= True

Beep()

End
if

Каждый
раз, когда пользователь щелкает на
кнопке Играть,
выполняется (вызывается) процедура
Button1_Сlick(
),
и снова выполняются операторы программы,
содержащиеся в этой процедуре (рис.
4.1.7-8).

  1. Технология
    IntelliSense
    и точечная нотация

Теперь
известно, как с помощью VB
2008

читать и записывать значения свойств
форм и эле­ментов управления. Если у
каждой формы и элемента управления
много свойств, как за ними уследить? Не
слишком удобно постоянно переключаться
меж­ду редактором кода и окном Свойства,
чтобы выяс­нить, какие свойства нам
нужны. Имеется более удобный способ.

Можно
использовать технологию IntelliSense.
Это часть VS
2008
.
IntelliSense
позволяет
сохранять время при редактировании
программного кода в окне редактора.
Intelli­Sense
знает, к какому элементу управления
обра­щаются, и какие

у него
есть свойства. Оно выводит список свойств
и позволяет вам выбирать из него нужное.
Используемое чаще всего свойство
подсвечи­вается, когда IntelliSense
отображает список. Напри­мер, для
текстового поля изначально подсвечивается
свойство Text.
С помощью стрелок вверх и вниз на
клавиатуре можно просматривать список
и выбирать то свойство, которое вам
требуется. При нажа­тии клавиши <Tab>
выбранное свойство добавляется в код.
Используя IntelliSense,
не придется запо­минать все свойства
всех элементов управления. Кроме того,
данное средство заметно сокращает
по­требность в наборе длинных имен
на клавиатуре!

Рассмотрим
это на примере.

Введем
с клавиатуры PictureBox1
и нажмем клавишу «точка» — рис. 4.1.7-9. Как
только вы введете точку, IntelliSense
отобразит список свойств элемента
PictureBox1.

Поскольку PictureBox1
— изображение, этот список будет таким
же, как и для любого другого изображения
на форме. По умолчанию в списке IntelliSense
подсвечивается
чаще всего используемое свой­ство
(рис. 4.1.7-9).

Рис.
4.1.7-9. Свойства PictureBox1, отображаемые с
помощью IntelliSense

Если
далее будет введена буква, например
буква «V»,
IntelliSense
про­крутит список до первого по
алфавиту свой­ства, начинающегося с
«V».
По мере ввода IntelliSense
ищет в списке свойство, наибо­лее
соответствующее введенным буквам.

Когда
свойство подсвечи­вается в списке
IntelliSense,
рядом появляется под­сказка, кратко
его описы­вающая. Эта подсказка,
например, может сооб­щить, если свойство
до­ступно только для чтения (Read
Only
,
т. е. ему нель­зя присваивать значение).
Кроме того, подсказка со­общает, какие
значения можно присваивать свой­ству,
например, строку (текст) или целое число.

  1. Выполнение
    приложения VB 2008

Чтобы
запустить программу VB
2008
из
среды разработки, необходимо сделать
одно из следующего:

  • выполнить
    команду Начать
    отладку (
    Start
    Debugging)
    элемента
    меню Отладка
    (Debug);

  • щелкнуть
    на кнопке Начать
    отладку (
    Start
    Debugging)
    на
    стандартной панели инструментов;

  • нажать
    <F5>.

  1. Запустить
    проект Проект-4.1.7-1.
    Если VB
    2008

    выводит сообщение об ошибке, то при
    вводе кода программы, вероятно, была
    допущена одна или несколько ошибок.
    Следует исправить их, сравнив то, что
    было введено, с вариантом из этого
    пособия.

Если
все было сделано правильно, то
Проект-4.1.7-1
будет компилироваться, и запустится
в VS
2008
.
Через некоторое время появится
созданный интерфейс пользователя,
ожидающий действий от пользователя.

  1. Далее
    необходимо щелкнуть на кнопке Играть.

Программа
сгенерирует три случайных числа и
отобразит их в надписях на форме, как
показано на рис. 4.1.7-10. Так как в поле
надписи появилась 7, появится рисунок,
означающий выигрыш, и компьютер издает
звуковой сигнал. Вы выиграли! (Звук,
который вы услышите, зависит от настроек.)

Рис. 4.1.7-10. Результаты
работы проекта Проект-4.1.7-1

Щелкните
на кнопке Играть
еще
раз, наблюдая за результатом в числовых
полях. Для окончания эксперимента с
вашим новым проектом щелкните на кнопке
Конец
игры.

Программа остановится и на экране снова
появится среда разработки.

  1. Внесение
    изменений в программу

В
любое время можно перезапустить VS
2008

и работать с программным проектом,
сохраненным на вашем диске. Снова
запустить VS
2008

и добавить в проект
Проект-4.1.7-1
оператор Randomize:

  1. Запустить
    VS
    2008
    .

На
стартовой странице VS
2008

появится список недавно открывавшихся
проектов. Так как только что закончили
работать с Проект-4.1.7-1,
первым проектом в этом списке должен
быть проект Проект-4.1.7-1.

  1. Чтобы
    открыть проект Проект-4.1.7-1,
    щелкнуть на ссылке Проект-4.1.7-1
    .

Откроется
проект Проект-4.1.7-1
и появится форма.

Далее
вы должны добавить в процедуру
Form1_Load(
), специальный
оператор, который связан с формой и
исполняется каждый раз при запуске
программы — оператор Randomize

Чтобы
отобразить на экране процедуру Form1_Load(
), сделайте
на форме (но не на одном из ее объектов)
двойной щелчок мышью.

В окне
Редактор
программного кода (Code Editor)

появится процедура Form1_Load(
).

  1. Ввести
    в программный код оператор Randomize,
    а затем нажать на клавишу со стрелкой
    вниз.

Оператор
Randomize
добавится в программу и будет исполняться
каждый раз при ее запуске. Чтобы создать
истинно случайную начальную точку для
функции Rnd(
),
используемой в процедуре Button_Click(
), Randomize
использует системные часы. Без оператора
Randomize
Проект-4.1.7-1
при
каждом ее запуске производит одну и ту
же последовательность случайных чисел.
При наличии Randomize
программа при каждом запуске генерирует
новую последовательность случайных
чисел.

  1. 3апустить
    новую версию Проект-4.1.7-1,
    а затем сохраните проект.

  2. Когда
    закончите работу с проектом, выполните
    команду Закрыть
    проект (Close Project)

    в элементе главного меню Файл(File).

Файлы,
связанные с программой Проект-4.1.7-1,
будут закрыты.

  1. Создать
    исполняемый файл

Последней
задачей этого примера является завершение
процесса разработки и создание приложения
для MS
Windows,
или
исполняемого файла (при условии, что
полученное решение
соответствует заданию). Приложения для
MS
Windows,
созданные
в VS
2008,
имеют
расширение .ехе
и могут выполняться на любой системе,
имеющей MS
Windows
и
необходимые
файлы поддержки. (VB
2008
устанавливает
все эти файлы, включая файл .NET
Framework,
автоматически.)

В
данный момент необходимо знать, что VB
2008
может
создавать два типа исполняемых файлов:
отладочный и окончательный.

Отладочные
версии создаются VS
2008
автоматически
при создании и тестировании программы.
Они сохраняются в папке, которая
расположена в папке проекта, и называются
\bin\debug.
Отладочный
исполняемый файл обычно содержит
отладочную информацию, из за которой
программа выполняется более медленно.
Окончательные версии — это оптимизированные
исполняемые файлы, сохраняемые в папке
проекта
bin\release.

Чтобы
установить параметры для окончательной
версии, выполнить команду
Свойства:
Проект-4.1.7-1...
элемента
главного меню Проект
(Project),
а
затем щелкнуть на вкладке Компиляция
(
Compile),
где
находится перечень опций компилятора
рис. 4.1.7-11.

Рис.
4.1.7-11

Далее необходимо
реализовать следующие шаги.

  1. В
    элементе главного меню Построение
    (
    Build)
    выполнить
    команду Построить
    Проект-4.1.7-1
    (Вuild
    Project-4.1.7-1).

Команда
Построить
(Вuild)

для сохранения файла создает папку с
именем bin\release
(если она еще не существует) и компилирует
исходный код проекта.

Результатом
этого является исполняемый файл с именем
Проект-4.1.7-1.ехе.

  1. Теперь
    необходимо запустить эту программу
    вне VS
    2008
    ,
    используя команду

Run
(Выполнить)

из меню Start
(Пуск)

MS
Windows
.

Появится
диалоговое окно
Run.

  1. Щелкните
    на Browse
    (Обзор)
    ,
    а затем перейдите в папку \release.

  2. Щелкните
    на пиктограмме приложения
    Проект-4.1.7-1.ехе,
    щелкните на Open
    (Открыть),

    а затем щелкните на ОК.

Программа
Проект-4.1.7-1
загрузится
и запустится в Windows.

  1. Щелкните
    несколько раз на кнопке Играть
    формы, чтобы проверить

работоспособность
проекта, а затем щелкните на кнопке
Конец
.

(Можно
запустить приложения для MS
Windows
,
включая откомпилированные программы
VB
2008
,
открыв проводник MS
Windows
).

  1. Чтобы
    закрыть VS
    2008

    и проект Проект-4.1.7-1,
    в меню Файл
    (File)

    выполните команду Выход
    (Exit).

Среда
разработки VS
2008

закроется.

  1. Выход из Visual
    Studio 2008

Сохранить
все изменения, которые вы сделали в
вашей программе, можно щелкнув на кнопке
Сохранить
все (
Save
All)
на
стандартной панели инструментов.

Поведением
по умолчанию Visual
Studio
2008
является
ситуация, когда
программе
имя присваивается
при создании проекта, но при этом не
указывается местоположение файла и не
сохраняется проект до тех пор,
пока не щелкните
на кнопке Сохранить
все (
Save
Аll)
или
не выполните команду Сохранить
все
(Save
Аll)
из
элемента главного меню Файл
(
File),
в
связи с тем, что в проект внесено
несколько
изменений.

В
меню Файл
(
File)
выполните
команду Выход
(
Exit).

Visual
Studio
закроется.

Счастливая
семерка

Создадим приложение, имитирующее
игровой автомат. Начало игры задается Вами щелчком на кнопке Играть.
В окне приложения появляются три 
случайных одноразрядных 
десятичных числа. Если хотя бы одно из них равно 7, то Вы выиграли и
появляется изображение стопки золотых монет (жаль, что только изображение).
Если же ни одно из трех выпавших чисел не равно 7, то Вы проиграли, и
изображение стопки монет не появляется (хорошо, что еще не нужно платить).
Наконец, когда Вам надоело играть, щелчком на кнопке Выход Вы можете закрыть
Вашу прикладную программу.

1. Проектирование
интерфейса

Итак, приступим к проектированию приложения. Начнем
с интерфейса, который должен выглядеть примерно так, как это показано на рис.
1.

Рис. 1. Расположение
объектов, применяемых в проекте

1.    
Создайте в корневом каталоге диска d свою рабочую папку, в которой во время
занятия будут храниться файлы Вашего проекта.

3.    
Создайте на форме две кнопки управления, расположив
их, как показано на рис. 1. На кнопке Command1 Вы будете щелкать, чтобы
начать игру. Щелчок на кнопке Command2 будет указанием закрыть
приложение.

4.    
Создайте рамку Frame1 в правом верхнем углу формы (см. рис.
1), в которой будут размещены три надписи, предназначенные для вывода случайных
цифр.

5.    
Создайте внутри рамки слева первую из трех
надписей – надпись Label1. Чтобы размеры всех трех надписей были одинаковы, удобно
оставшиеся две получить копированием уже созданной надписи. Для копирования
надписи выполните следующую последовательность действий:

5.1. Щелкните на поле надписи Label1,
чтобы сделать ее активным объектом.

5.2. Нажмите Contrl+C, чтобы
скопировать объект в буфер обмена Windows.

5.3. Щелкните на рамке Frame1,
чтобы сделать ее активным элементом. Тем самым Вы назначаете рамку приемником
для следующей операции вставки.

5.4. Нажмите Contrl+V, чтобы в
рамке создать дубликат надписи.

5.5. Внимание! На экране появится окно с
сообщением о том, что объект с именем Label1 уже существует и с
предложением создать массив объектов. В диалоговом окне нажмите на кнопку No
(Нет). Будьте
внимательны!
Если Вы отреагируете иначе, то Вы рискуете создать
массив надписей, что чревато появлением трудно диагностируемых ошибок при
разработке кода.

5.6. Появившийся дубликат надписи
Label1 переместите в правую часть рамки.

5.7. Для получения третьей надписи повторите
выполнение пунктов 5.3 – 5.5.

5.8. Поместите полученный
дубликат надписи Label1 посредине
между первыми двумя надписями.

6.    
 Создайте
надпись Label4 (она будет содержать название игры) и надпись Label5
(она будет содержать шифр группы и фамилии студентов бригады – исполнителей
задания).

7.    
Теперь создайте поле рисунка, в котором при
выигрыше пользователя будет появляться изображение столбика монет. В правый
нижний угол формы поместите с помощью элемента Image (рисунок) поле
рисунка. Для этого щелкните на кнопке Image в окне элементов и создайте
прямоугольное поле в правом нижнем углу формы. Созданный объект будет назван Image1.

 Соглашение об именах основных объектов

При назначении объекту имени рекомендуется его имя
начинать с трехбуквенного префикса, отражающего тип объекта. Остальная часть
имени должна напоминать о назначении объекта. Например, для кнопки Command2,
предназначенной для завершения игры, вместо имени Command2 было бы
удобнее применить имя cmdВыход.
Здесь первая часть имени, состоящая из трех символов, указывает, что объект
является кнопкой, а вторая говорит о назначении объекта.

Рекомендуется применять следующие префиксы имен
объектов:

Объект

Префикс

Кнопка

cmd

Рамка

fra

Форма

frm

Рисунок

img

Надпись

lbl

Линия

lin

Список

lst

Графическое поле

pic

Фигура

shp

Таймер

tmr

Текстовое поле

txt

8.    
Сохраните форму Form1 под именем frmГлавная
в рабочей папке, а также сохраните проект, задав ему имя СчастливаяСемерка.

3. Установка свойств
объектов

Рис. 2 Готовый
интерфейс
проекта

9.    
Установите такие значения свойств объектов,
чтобы интерфейс проекта соответствовал рис. 2. При этом Вам придется обратиться
к следующим свойствам:

Alignment – для выбора
вида выравнивания текста на объекте;

BackColor – для установки
цвета фона;

Caption – для задания
текста на объекте;

Font – для изменения
параметров текста;

ForeColor – для установки
цвета текста на объекте.

С целью сокращения затрат
времени на задание значений свойств, при необходимости задать одинаковое
значение одному и тому же свойству нескольких объектов, следует эти объекты
объединить в группу выделенных объектов. Для этого нужно выделить объекты при
нажатой клавише Shift. Когда выделена группа объектов, заданное значение свойства
становится значением соответствующего свойства всех объектов выделенной группы.

Command1CmdИграть, Command2CmdВыход,

Label1LblЧисло1, Label1LblЧисло2, Label1LblЧисло3,

Image1ImgВыигрыш.

Stretch (Вытягивание) для
установления точного размера картинки по размеру окна;

Picture (Рисунок) для
указания имени графического файла, который загружается в окно;

12.1. Выделите
объект «рисунок» на форме.

12.2. Щелкните на свойстве Stretch
(Вытягивание) в окне свойств, затем щелкните на стрелке, чтобы вызвать список,
и в списке щелкните на значении True.
Теперь картинка точно будет вписана в поле рисунка.

12.3. Дважды
щелкните на свойстве Picture (Рисунок) в окне свойств.
Появиться диалоговое окно Load Picture (Загрузить рисунок).
Войдите в папку kladovka
том, где она находится, чуть позже). Среди файлов этой папки выделите файл Coins.wmf и щелкните на кнопке Open.
Файл будет загружен в окно в поле рисунка на форме.

Доступ к папке kladovka может быть получен
несколькими способами:

o      
Если Вы работаете в компьютерном классе ИВЦ МЭИ,
то в локальной сети k:\FP\Inf\kladovka.

o      
Или если Вы имеете лазерный диск «Обучающий
комплекс Информатика на основе Visual
Basic
6.0», то Informatic\Informatika\kladovka.

o      
Или скачайте архив этой папки на свой компьютер
с сайта http://glagolevvb.narod.ru
и выполните
разархивацию архивного файла (в окне программы Проводник для этого выделите
этот файл и выполните команду контекстного меню
Extract to).

13.          
Сохраните проект.

4. Составление программного
кода

Ниже приведен программный код проекта:

Option Explicit

Private
Function
СлучайноеЧисло_0_9()
As Byte

    СлучайноеЧисло_0_9 = Int(Rnd * 10)

End Function

Private Sub
Form_Load()

    Randomize

End Sub

Private Sub cmdИграть_Click()

    ImgВыигрыш.Visible = False

    LblЧисло1.Caption = СлучайноеЧисло_0_9()

    LblЧисло2.Caption = СлучайноеЧисло_0_9()

    LblЧисло3.Caption = СлучайноеЧисло_0_9()

5:  If (LblЧисло1.Caption = 7) Or _

       (LblЧисло2.Caption = 7) Or _

       (LblЧисло3.Caption = 7) Then

        ImgВыигрыш.Visible = True

        Beep

10: End If

End Sub

Private Sub cmdВыход_Click()

    End

End Sub

Программа содержит объявление функции с именем СлучайноеЧисло_0_9,
которая возвращает случайное одноразрядное целое число из диапазона от 0 до 9.
В этой функции применяется функция Rnd, которая возвращает числовое
значение с плавающей точкой, значение которого удовлетворяет условию 0<=Rnd<1,
а также применяется функция Int, возвращающая целую часть аргумента.

Первая строка тела процедуры cmdИграть_Click,
которая выполняется при щелчке левой клавишей мыши на кнопке cmdИграть,
скрывает рисунок с изображением стопки монет. В строках 2 – 4 содержатся три
обращения к функции СлучайноеЧисло_0_9, которые обеспечивают выработку
трех случайных целых одноразрядных чисел. Строки 5 – 10 обеспечивают появление
рисунка со стопкой монет и подачу сигнала, если хотя бы одно из полученных трех
случайных чисел равно семи.

Процедура Form_Load выполняется при
загрузке формы. Единственная строка этой процедуры обеспечивает инициализацию
функции Rnd.
Если этого не сделать, то после каждого запуска приложения будет генерироваться
одна и та же последовательность случайных чисел. Если хотите, проверьте. Для
этого достаточно поставить апостроф (‘) перед оператором Randomize,
превратив его тем самым в комментарий, и пару раз запустить приложение, записав
при каждом запуске начальную часть последовательности вырабатываемых случайных
чисел. Если сравните сделанные записи, то убедитесь в их совпадении.

14.          
Введите код программы и сохраните проект. Для
вставки в программу функции СлучайноеЧисло_0_9 воспользуйтесь командой Tools,
Add
Procedure
.

15.          
Запустите приложение и проверьте его работу.

16.           
Закройте VB.

17.           
Удалите свою рабочую папку на диске d.

5. Вопросы для
контроля

1.     Для чего предназначен элемент Image?

2.     Как создать группу выделенных объектов?

3.     Каково назначение свойств BackColor,
ForeColor
?

4.     Каково назначение свойств поля рисунка Stretch,
Visible, Picture
?

5.     Что означает имя Rnd?

6.     Что означает имя Int?

7.     Как изменится работа проекта, если в
процедуре
Form_Load удалить инструкцию Randomize?

POCO, ACE, Loki и другие продвинутые C++ библиотеки

NullReferenced 13.05.2025

В C++ разработки существует такое обилие библиотек, что порой кажется, будто ты заблудился в дремучем лесу. И среди этого многообразия POCO (Portable Components) – как маяк для тех, кто ищет. . .

Паттерны проектирования GoF на C#

UnmanagedCoder 13.05.2025

Вы наверняка сталкивались с ситуациями, когда код разрастается до неприличных размеров, а его поддержка становится настоящим испытанием. Именно в такие моменты на помощь приходят паттерны Gang of. . .

Создаем CLI приложение на Python с Prompt Toolkit

py-thonny 13.05.2025

Современные командные интерфейсы давно перестали быть черно-белыми текстовыми программами, которые многие помнят по старым операционным системам. CLI сегодня – это мощные, интуитивные и даже. . .

Конвейеры ETL с Apache Airflow и Python

AI_Generated 13.05.2025

ETL-конвейеры – это набор процессов, отвечающих за извлечение данных из различных источников (Extract), их преобразование в нужный формат (Transform) и загрузку в целевое хранилище (Load). . . .

Выполнение асинхронных задач в Python с asyncio

py-thonny 12.05.2025

Современный мир программирования похож на оживлённый мегаполис – тысячи процессов одновременно требуют внимания, ресурсов и времени. В этих джунглях операций возникают ситуации, когда программа. . .

Работа с gRPC сервисами на C#

UnmanagedCoder 12.05.2025

gRPC (Google Remote Procedure Call) — открытый высокопроизводительный RPC-фреймворк, изначально разработанный компанией Google. Он отличается от традиционых REST-сервисов как минимум тем, что. . .

CQRS (Command Query Responsibility Segregation) на Java

Javaican 12.05.2025

CQRS — Command Query Responsibility Segregation, или разделение ответственности команд и запросов. Суть этого архитектурного паттерна проста: операции чтения данных (запросы) отделяются от операций. . .

Шаблоны и приёмы реализации DDD на C#

stackOverflow 12.05.2025

Когда я впервые погрузился в мир Domain-Driven Design, мне показалось, что это очередная модная методология, которая скоро канет в лету. Однако годы практики убедили меня в обратном. DDD — не просто. . .

Исследование рантаймов контейнеров Docker, containerd и rkt

Mr. Docker 11.05.2025

Когда мы говорим о контейнерных рантаймах, мы обсуждаем программные компоненты, отвечающие за исполнение контейнеризованных приложений. Это тот слой, который берет образ контейнера и превращает его в. . .

Micronaut и GraalVM — будущее микросервисов на Java?

Javaican 11.05.2025

Облачные вычисления безжалостно обнажили ахиллесову пяту Java — прожорливость к ресурсам и медлительный старт приложений. Традиционные фреймворки, годами радовавшие корпоративных разработчиков своей. . .

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Звук завершения работы windows 7 wav
  • Microsoft windows sharepoint services это
  • Xerox phaser 3117 драйвер для windows 11 64 bit
  • Livecd дисков на базе windows 10 pe
  • Имя файла windows media player