ТПКС-лаба5
.docxМІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ХАРКІВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ РАДІОЕЛЕКТРОНІКИ
Кафедра КІТАМ
ЗВІТ з лабораторної роботи № 5 з дисципліни: «Технологіі програмування комп’ютерних систем»
Варіант 2
Виконав: Перевірив:
ст. гр. АКТСІу -17-1 ст. викл. каф. КІТАМ
Черкашин В.А. Бронніков А.І.
Юрченко В.Р.
Харків 2019
5 РОЗРОБКА .NET ПРОГРАМ ІЗ ВИКОРИСТАННЯ РОЗШИРЕНОГО НАБОРУ ЕЛЕМЕНТІВ КЕРУВАННЯ
5.1 Мета роботи
Використання функцій для роботи з графікою Windows Forms у середовищі Microsoft Visual Studios 2010.
5.2 Практична частина та лістинг програмного коду
Файл MyForm.cpp:
#include "MyForm.h"
using namespace System;
using namespace System::Windows::Forms;
[STAThreadAttribute]
void Main(array<String^>^ args) {
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
laba5_1::MyForm form;
Application::Run(%form);
}
Файл MyForm.h:
#pragma once
namespace laba5_1 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
/// <summary>
/// Сводка для MyForm
/// </summary>
public ref class MyForm : public System::Windows::Forms::Form
{
public:
MyForm(void)
{
InitializeComponent();
//
//TODO: добавьте код конструктора
//
}
protected:
/// <summary>
/// Освободить все используемые ресурсы.
/// </summary>
~MyForm()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::ListView^ listView1;
protected:
private: System::Windows::Forms::ColumnHeader^ ColumnHeader;
private: System::Windows::Forms::ColumnHeader^ columnHeader2;
private: System::Windows::Forms::ColumnHeader^ columnHeader3;
private:
/// <summary>
/// Требуется переменная конструктора.
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// Обязательный метод для поддержки конструктора - не изменяйте
/// содержимое данного метода при помощи редактора кода.
/// </summary>
void InitializeComponent(void)
{
this->listView1 = (gcnew System::Windows::Forms::ListView());
this->ColumnHeader = (gcnew System::Windows::Forms::ColumnHeader());
this->columnHeader2 = (gcnew System::Windows::Forms::ColumnHeader());
this->columnHeader3 = (gcnew System::Windows::Forms::ColumnHeader());
this->SuspendLayout();
//
// listView1
//
this->listView1->Columns->AddRange(gcnew cli::array< System::Windows::Forms::ColumnHeader^ >(3) {this->ColumnHeader, this->columnHeader2,
this->columnHeader3});
this->listView1->Location = System::Drawing::Point(36, 39);
this->listView1->Name = L"listView1";
this->listView1->Size = System::Drawing::Size(380, 255);
this->listView1->TabIndex = 0;
this->listView1->UseCompatibleStateImageBehavior = false;
this->listView1->View = System::Windows::Forms::View::Details;
this->listView1->SelectedIndexChanged += gcnew System::EventHandler(this, &MyForm::listView1_SelectedIndexChanged);
//
// ColumnHeader
//
this->ColumnHeader->Text = L"I";
this->ColumnHeader->Width = 21;
//
// columnHeader2
//
this->columnHeader2->Text = L"product";
this->columnHeader2->TextAlign = System::Windows::Forms::HorizontalAlignment::Center;
this->columnHeader2->Width = 100;
//
// columnHeader3
//
this->columnHeader3->Text = L"deliver";
this->columnHeader3->TextAlign = System::Windows::Forms::HorizontalAlignment::Center;
this->columnHeader3->Width = 100;
//
// MyForm
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(428, 331);
this->Controls->Add(this->listView1);
this->Name = L"MyForm";
this->Text = L"MyForm";
this->Load += gcnew System::EventHandler(this, &MyForm::MyForm_Load);
this->ResumeLayout(false);
}
#pragma endregion
private: System::Void listView1_SelectedIndexChanged(System::Object^ sender, System::EventArgs^ e) {
}
private: System::Void MyForm_Load(System::Object^ sender, System::EventArgs^ e) {
ImageList ^ imageList = gcnew ImageList();
array<Bitmap ^> ^ images = gcnew array<Bitmap^>(3);
images[0] = gcnew Bitmap("images/bolt.png");
images[1] = gcnew Bitmap("images/gaika.jpg");
images[2] = gcnew Bitmap("images/shyryp.jpg");
imageList->Images->Add(images[0]);
imageList->Images->Add(images[1]);
imageList->Images->Add(images[2]);
listView1->SmallImageList = imageList;
array<String ^> ^ managedArray1 = gcnew array<String^>(3);
managedArray1[0]= "Болт";
managedArray1[1]= "Гайка";
managedArray1[2]= "Шуруп";
for (int i=0; i<3; i++){
array<String ^> ^ managedArray = gcnew array<String^>(3);
managedArray[0] = "";
managedArray[1] = managedArray1[i];
managedArray[2] = "Ukraine";
ListViewItem ^ listViewItem = gcnew ListViewItem(managedArray);
listViewItem->ImageIndex = i;
listView1->Items->Add(listViewItem);
}
}
};
}
Рисунок 5.1- Демонстрацiя роботи програми
ВИСНОВКИ
В ході виконання лабораторної роботи було розглянуто функції ListViev з вкладеним ImageList до товарiв приладобудiвництва.
Елемент ImageList має використатися у якості допоміжного під час створення інших елементів керування. Він може вказуватися як параметр елементу перегляду списків ListView (властивості LargeImageList та SmallImageList).
ListView є потужним (хоча і більш складним) елементом керування, який містить список елементів.. Відображувані елементи складаються з комбінації записів (масивів) тексту, великих та малих іконок.