
- •Індивідуальне завдання
- •Аналітичний розділ
- •Побудова інформаційно-математичної моделі задачі
- •Об’єктна модель
- •4. Визначення структури даних
- •5. Розробка інтерфейсу програми з користувачем
- •6. Складання коду програми:
- •7. Реалізація проекту у візуальному середовищі
- •8. Аналіз програми
- •9. Тестування програми
- •10. Інструкція з експлуатації програми
- •10.1 Вимоги до технічного забезпечення
- •10.2 Інсталяція програмного забезпечення
- •10.3 Експлуатація програмного продукту
- •11. Аналіз отриманих результатів
5. Розробка інтерфейсу програми з користувачем
Інтерфейс є одним із найголовніших етапів розробки програмного продукту. Саме інтерфейс допомагає користувачеві швидше розібратись із експлуатацією, і пришвидшує роботу із програмою.
Створимо новий проект: File -> New -> Project, у діалоговому вікні вибираємо мову програмування (С++) та тип додатку (Windows Forms Application), проект назвемо «l», отримана форма й буде нашою головною формою (рисунок 5.1).
Рисунок 5.1 – Головна форма одразу після створення
На цій формі розмістимо кнопки для переходу на інші (підлеглі) форми, а також добавимо меню яке буде містити два пункти: «Вихід» та «Про програму». Отримаємо наступний вигляд форми (рисунок 5.2).
Рисунок 5.2 – Головна форма після додавання компонент
Змінимо наступні властивості:
Form1:
ClientSize = System::Drawing::Size(472, 416);
BackgroundImage = (cli::safe_cast<System::Drawing::Image^ >(resources-GetObject(L"$this.BackgroundImage")));
BackgroundImageLayout = System::Windows::Forms::ImageLayout::Stretch;
FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
button1:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 25, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(434, 53);
Text = L"Демонстрація черги";
button2:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 25, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(434, 53);
Text = L"Демонстрація списку";
button3:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 25, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(434, 53);
Text = L"Теоретичні відомості";
label1:
Font = (gcnew System::Drawing::Font(L"Monotype Corsiva", 40, static_cast<System::Drawing::FontStyle>((System::Drawing::FontStyle::Bold | System::Drawing::FontStyle::Italic)),
System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::Peru;
Size = System::Drawing::Size(445, 65);
Text = L"Оберіть категорію:";
TextAlign = System::Drawing::ContentAlignment::MiddleCenter;
проПрограмуToolStripMenuItem^
Text = L"Про програму";
вихідToolStripMenuItem:
Text = L"Меню";
вихідToolStripMenuItem1:
Text = L"Вихід";
Після змінення вище вказаних властивостей отримаємо кінечний вигляд головної форми (рисунок 5.3).
Рисунок 5.3 – Кінцевий вигляд головної форми
Додамо до проекту підлеглу форму, клацнувши правою клавішею миші на проекті(він знаходиться в вікні Solution Explorer) -> Add -> New Item -> Windows Form, і назвемо її «Form2». На створену форму вставимо компоненти які показані на рисунку 5.4.
Рисунок 5.4 – Форма Form2 після додавання компонент
Змінимо наступні властивості:
button1:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 20, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Location = System::Drawing::Point(345, 20);
Size = System::Drawing::Size(289, 52);
Text = L"Додати елемент";
ForeColor = System::Drawing::Color::MediumOrchid;
button2:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 20, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(289, 50);
Text = L"Видалити елемент";
ForeColor = System::Drawing::Color::MediumOrchid;
button3:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 20, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(289, 52);
Text = L"Створити чергу";
ForeColor = System::Drawing::Color::MediumOrchid;
textBox1:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 20, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
groupBox1:
Size = System::Drawing::Size(988, 127);
pictureBox1:
Size = System::Drawing::Size(988, 454);
вихідToolStripMenuItem: Text = L"Вихід";
вихідToolStripMenuItem1: Text = L"На головну";
Form2:
ClientSize = System::Drawing::Size(988, 153);
FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
Після зміни усіх цих властивостей, отримаємо кінцевий вигляд форми, яка буде використовуватися для демонстрації роботи черги. Форма показана на рисунку 5.5 показує її вигляд під час створення, а після натискання кнопки «Створити чергу», ця форма буде мати вигляд показаний на рисунку 5.6.
Рисунок 5.5 – Кінцевий вигляд форми Form2 зразу після її запуску
Рисунок 5.6 – Кінцевий вигляд форми Form2
Додамо до проекту підлеглу форму, клацнувши правою клавішею миші на проекті(він знаходиться в вікні Solution Explorer) -> Add -> New Item -> Windows Form, і назвемо її «spisok». На створену форму вставимо компоненти які показані на рисунку 5.7.
Рисунок 5.7 - Форма spisok після додавання компонент
Змінимо наступні властивості:
button1:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::MediumOrchid;
Size = System::Drawing::Size(189, 33);
Text = L"Додати елемент";
button2:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::MediumOrchid;
Size = System::Drawing::Size(189, 32);
Text = L"Видалити елемент";
button3:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::MediumOrchid;
Location = System::Drawing::Point(8, 18);
Size = System::Drawing::Size(190, 33);
Text = L"Створити список";
button4:
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::MediumOrchid;
Size = System::Drawing::Size(190, 32)
Text = L"Створити елемент";
groupBox1:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 10, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::Red;
Size = System::Drawing::Size(636, 102);
Text = L"Робота зі списком";
pictureBox1:
Image = (cli::safe_cast<System::Drawing::Image^ >(resources->GetObject(L"pictureBox1.Image")));
Size = System::Drawing::Size(630, 281);
comboBox1:
DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Items->AddRange(gcnew cli::array< System::Object^ >(3) {L"На початок списку", L"У кінець списку", L"Після елементу №"});
Size = System::Drawing::Size(188, 32);
comboBox2:
DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
Enabled = false;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Items->AddRange(gcnew cli::array< System::Object^ >(3) {L"З початку списку", L"З кінця списку", L"Після елементу №"});
Size = System::Drawing::Size(188, 32);
comboBox3:
DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(37, 32);
Visible = false;
comboBox4:
DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(37, 32);
Visible = false;
spisok:
this->ClientSize = System::Drawing::Size(636, 124);
FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
вихідToolStripMenuItem:
Text = L"Вихід";
наГоловнуToolStripMenuItem:
Text = L"На головну";
Після зміни усіх цих властивостей, отримаємо кінцевий вигляд форми, яка буде використовуватися для демонстрації роботи списку. Форма показана на рисунку 5.8 показує її вигляд під час створення, а після натискання кнопки «Створити список», ця форма буде мати вигляд показаний на рисунку 5.9.
Рисунок 5.8 - Кінцевий вигляд форми spisok одразу після її запуску
Рисунок 5.9 - Кінцевий вигляд форми spisok
Додамо до проекту підлеглу форму, клацнувши правою клавішею миші на проекті(він знаходиться в вікні Solution Explorer) -> Add -> New Item -> Windows Form, і назвемо її «about». На створену форму вставимо компоненти які показані на рисунку 5.10.
Рисунок 5.10 - Форма about після додавання компонент
Змінимо наступні властивості:
button1:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 20, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(112, 40);
Text = L"Ок";
label1:
Font = (gcnew System::Drawing::Font(L"Comic Sans MS", 35.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(0)));
ForeColor = System::Drawing::Color::RosyBrown;
Size = System::Drawing::Size(385, 65);
Text = L"Курсова робота";
label2:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 30, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::MediumPurple;
Size = System::Drawing::Size(190, 46);
Text = L"На тему:";
label3:
Font = (gcnew System::Drawing::Font(L"Monotype Corsiva", 21.75F, System::Drawing::FontStyle::Italic, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
ForeColor = System::Drawing::Color::OrangeRed;
Size = System::Drawing::Size(190, 46);
Text = L"На тему:";
label4:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 18, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(379, 29);
Text = L"Виконав студент групи ПР-91";
label5:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 15.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(331, 25);
Text = L"Нічепорук Юрій Олександрович";
label6:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 18, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(344, 29);
Text = L"На замовлення викладача";
label7:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 15.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(372, 25);
Text = L"Григоровського Євгена Сергійовича";
label8:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 12.75F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(422, 20);
Text = L"По предмету \"Алгоритми і структури даних\"";
about:
ClientSize = System::Drawing::Size(448, 529);
FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
Після зміни всіх вище сказаних властивостей ми отримаємо кінцевий вигляд форми (рисунок 5.11), яка буде відображати інформацію про програму
Рисунок 5.11 – Кінцевий вигляд форми about
Додамо до проекту підлеглу форму, клацнувши правою клавішею миші на проекті(він знаходиться в вікні Solution Explorer) -> Add -> New Item -> Windows Form, і назвемо її «teoria». На створену форму вставимо компоненти які показані на рисунку 5.12.
Рисунок 5.12 – Вигляд форми teoria після додавання компонент
Змінимо наступні властивості:
teoria:
ClientSize = System::Drawing::Size(585, 384);
FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
label1:
Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 27.75F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, static_cast<System::Byte>(204)));
Size = System::Drawing::Size(548, 42);
Text = L"Короткі теоретичні відомості";
richTextBox1:
richTextBox1->ReadOnly = true;
richTextBox1->Size = System::Drawing::Size(561, 269);
вихідToolStripMenuItem:
вихідToolStripMenuItem->Text = L"Меню";
завантажитиІншийФайлToolStripMenuItem:
завантажитиІншийФайлToolStripMenuItem->Text = L"Завантажити інший файл";
наГоловнуToolStripMenuItem:
наГоловнуToolStripMenuItem->Text = L"На головну";
Після зміни усіх вище вказаних властивостей отримаємо готовий вигляд форми (рисунок 5.13), яка буде використовуватися для відображення теоретичних відомостей.
Рисунок 5.13 – Кінцевий вигляд форми teoria