Створення багатомодульних програмних проектів зі створення та опрацювання даних у файлах засобами Visual C++

Використання dataGridView при роботі з даними файлів. Програмний код основного модуля з поясненнями. Створення додаткових форм і меню. Технології Visual Studio зі створення багатомодульних проектів, технології опрацювання даних, які зберігаються у файлах.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 30.01.2016
Размер файла 1,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Размещено на http://www.allbest.ru

Міністерство освітиі науки України

Одеська національна академія зв'язку ім. О.С. Попова

Кафедра інформаційних технологій

КУРСОВА РОБОТА

з дисципліни: "Основи програмування"

на тему: "Створення багатомодульних програмних проектів зі створення та опрацювання даних у файлах засобами Visual C++"

cтудента 1-го курсу, групи ПІ-1.01.01

Якуца Олега Віталійовича

Керівник доцент, к.т.н. Трофименко О.Г.

Одеса 2015

Вступ

Популярне інтегроване середовище розробки програмного забезпечення Visual С++ є частиною комплекту Microsoft Visual Studio, а, крім того, воно постачається у вигляді безкоштовного функціонально обмеженого комплекту Visual C++ UltimateEdition. Стандартизована мова програмування Visual С++ дозволяє розробляти як консольні програми, так і програми з графічним інтерфейсом, у тому числі, з підтримкою технології Windows Forms як в рідному, так і в керованому кодах для різних комп'ютерних систем. Поєднання простоти освоєння візуального середовища проектування і підтримка широкого спектра технологій роблять Visual С++ універсальним інструментом створювання програмних проектів будьякого рівня складності як для платформи .NET Framework, так і для виконання у середовищі "чистої" Windows.

Тематика роботи зумовлена тим, що більшість комп'ютерних програм, які розв'язують ті чи інші практичні завдання, зберігають дані у вигляді різнотипних файлів, і тому виникає необхідність програмно створювати, видаляти, записувати читати, відкривати файли. Visual C++ пропонує широкий спектр засобів зі створення бінарних (двійкових) та текстових файлів. На практиці доцільним є створення основного файла (чи файлів) з даними у двійковому форматі, оскільки цей формат не потребує додаткового місця, а, отже, і пам'яті для символів-розділювачів (пробілів, табуляцій та ін.). А вже формування звітних документів слід створювати у текстовому форматі (типи файлів txt, rtf, doc тощо).

Актуальність теми курсової роботи "Створення багатомодульних програмних проектів для опрацювання даних у файлах засобами Visual C++" зумовлена повсюдною практичною затребуваністю програмних проектів, які зберігають дані у файлах. Тобто програма сама має створювати файли того чи іншого формату, записувати у них дані, за вимогою виводити або всі дані файла, або лише ті, які задовольняють певній умові, вміти редагувати і видаляти певні дані файла, надавати можливість створення нових файлів (звітних документів) з певними даними з основного файла та ін.

Об'єктом дослідження є технології Visual Studio зі створення багатомодульних проектів та технології опрацювання даних, які зберігаються у файлах. файл дані багатомодульний програмний

Предмет дослідження - програмні засоби Visual C++ для створення файлів різних форматів, записування у них даних, виведення вмісту цих файлів, відбирання даних за умовою, можливості редагування файла і видалення певних даних з файла, створення нових файлів (звітних документів) з певними даними з основного файла, засоби для створення програмних проектів з декількома динамічними формами та взаємодії між ними.

Мета курсової роботи полягає у вивченні технологій Visual C++ програмного створення файлів даних з можливістю їх програмного редагування (дописування, змінювання чи видалення даних) та набуття навиків розробки програмних проектів з візуальним інтерфейсом, організованих за допомогою меню, діалогових вікон, декількох взаємодіючих форм та ін. Відповідно до поставленої мети визначено такі завдання:

- розкрити сутність технологій Visual Studio зі створення багатомодульних проектів;

- вивчити наявні програмні засоби Visual C++, які дозволяють створювати файли різних форматів, записувати у них даних, переглядати вміст цих файлів, відбирати дані за умовою, редагувати дані у файлах;

- розробити програмний проект для розв'язання завдання відповідно до індивідуального варіанта, який передбачає створення, заповнення даними, відбір та редагування файлів різних форматів.

Курсова робота є самостійною роботою студента, яка передбачає закріплення та розширення теоретичних знань з дисципліни "Основи програмування".

Індивідуальне завдання:

Засобами Visual С++ створити програмний проект, який включатиме створення та опрацювання бінарного і текстового файлів з даними відповідно до індивідуального варіанта. При створенні програмного проекту передбачити виконання таких завдань:

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

про студентів:ПІП,група,дата народження,екзаменаційний бал з:історіі,мат-аналізу,Основ програмування,наявність пропусків;

2) програмний перегляд даних створеного бінарного файла;

3) можливість редагування та зберігання відредагованого файла;

4) впорядкування (сортування) за алфавітом;

5) відбір даних файла за умовою: Студенті які не мають балів нижче 75;

6) можливість програмного відбору даних за умовою (іменинники цього місяця) та створення на основі відібраних даних текстового звітного документа;

7) Видалення даних бінарного файла за умовою: наявність пропусків без поважної причини;

8) з метою забезпечення інформаційної частини проекту, а саме: для надання інформації про автора роботи та для ознайомлення із завданням, яке розв'язує проект, створити три додаткові форми:

а)про автора

б)форму для виведення, редагування та форматування параметрів шрифту текстового документа із завданням

в)форму-заставку, перехід до створених форм та додаткових функцій для роботи з файлом даних організувати за допомогою меню.

9)Додаткове завдання: Створення фонової музики,та звуків натискання.

Розділ 1.Теоретичні відомості: інструментарій використовуваний для розв'язання завдання

1.1 Робота з файлами

Файлами є іменовані області пам'яті на зовнішньому носії, призначені для довготривалого зберігання інформації. Файли мають імена й є організовані в ієрархічну деревоподібну структуру з каталогів (тек) і простих файлів.

Часто використовується така метафора: якщо уявляти собі файли як книжки (лише зчитування) і блокноти (зчитування й записування), які стоять на полиці, то відкриття файла - це вибір книжки чи блокнота за заголовком на його обкладинці й відкриття обкладинки (на першій сторінці). Після відкриття можна читати, дописувати, викреслювати і правити записи, перегортати книжку. Сторінки можна зіставити з блоками файла, а полицю з книжками - з каталогом.

Для доступу до даних файла з програми в ній слід прописати функцію відкриття чи створення цього файла, тим самим встановити зв'язок між ім'ям файла і певною файловою змінною у програмі. Доступ до даних файла відбувається з так званої позиції зчитування-записування, яка автоматично просувається при операціях зчитування-записування. Існують, щоправда, функції для довільного змінювання цієї позиції.

С++ надає засоби опрацювання двох типів файлів: текстових і бінарних (двійкових).

Текстові файли призначено для зберігання текстів, тобто сукупності символьних рядків змінної довжини. Кожен рядок завершується керувальною послідовністю '\n', а розділювачами слів та чисел у рядку є пробіли й символи табуляції. Оскільки вся інформація текстового файла є символьною, програмне опрацювання такого файла полягає в читанні рядків, виокремлюванні з рядка слів і, за потреби, перетворюванні цифрових символьних послідовностей на числа відповідними функціями перетворювання. Створювати і редагувати текстові файли можна не лише в програмі, а і в якому завгодно текстовому редакторі, наприклад, Word, WordPad чи Блокноті.

Бінарні (двійкові) файли зберігають дані у тому самому форматі, в якому вони були оголошені, а їхній вигляд є такий самий, як і в пам'яті комп'ютера. І тому відпадає потреба у використанні розділювачів: пробілів, керувальних послідовностей, а отже, розмір використовуваної пам'яті порівняно з текстовими файлами з аналогічною інформацією є значно меншим. Окрім того, немає потреби у застосуванні функцій перетворювання числових даних. Але кожне опрацювання даних бінарних файлів можливе лише за наявності програми, якій має бути відомо, що саме і в якій послідовності зберігається у цьому файлі.

У цій роботі будуть розглянуті основні засоби створення й опрацювання текстових файлів з використанням спеціального простору імен System::IO платформи .NET Framework, хоча слід зазначити, що існують й інші підходи при роботі з файлами.

1.2 Створення бінарного файла

Створити бінарний файл з ім'ям Test.dat у поточному каталозі можна командою:

BinaryWriter^fb=gcnew BinaryWriter (File::Open ("Test.dat",FileMode::OpenOrCreate));

або двома командами:

FileStream^ data = gcnew FileStream ("Test.dat", FileMode::OpenOrCreate);

BinaryWriter^ fb = gcnew BinaryWriter (data);

При цьому режим відкриття OpenOrCreate дозволить не обнуляти вже існуючий файл (якщо такий є), а лише відкрити його.

Якщо створюваний файл слід розмістити не в поточному каталозі, а в якомусь іншому, слід зазначити повний шлях до файла.

Записати у файл рядок s можна за допомогою метода

WriteLine: String^ s = "Текст, який буде записано у файл окремим абзацом.";

ft->WriteLine (s);

Дописати дані у кінець файла можна командою:

File::AppendAllText ("MyTest.rtf", "Текст, який буде дописано у файл\n");

При цьому, якщо файл з таким ім'ям не існував, він буде створений, тобто метод AppendAllText і створює файл, і відкриває його, і дописує у нього дані, поєднуючи можливості відразу декількох методів.

Для зчитування рядків текстового файла слід спочатку створити екземпляр класу StreamReader, після чого по черзі зчитувати всі рядки з файла:

StreamReader^ ft = File::OpenText ("MyTest.rtf");

String^ s = ""; while ( s = ft->ReadLine ( ) ) Console::WriteLine ( s );

У наведеному циклі умовою припинення зчитування рядків з файла є нульове значення довжини зчитаного рядка. Така конструкція операторів дозволить переглянути вміст всього текстового файла у консольному режимі.

Переміщуватися по файлу можна не лише при зчитуванні даних, а й за допомогою метода Seek, наприклад:

ft->BaseStream->Seek (0, SeekOrigin::Begin); // перейти на початок файла

ft->BaseStream->Seek (0, SeekOrigin::End); // перейти у кінець файла

Закрити файл доречно командою ft->Close ( );

1.3 Використання dataGridView при роботі з даними файлів

Елемент dataGridView на формі можна використовувати не лише для введення-виведення матриць, адже цей елемент має широкий спектр налаштовуваних властивостей, завдяки яким можна задавати різні властивості для різних стовпців елемента. Цю можливість доволі зручно використовувати для введення-виведення даних бінарних файлів, поля яких мають різні типи даних: числові, рядкові, логічні, списки та ін.

Розглянемо докладніше налаштування dataGridView. Після розміщення такого елемента на формі доцільно почергово створити на ньому необхідну кількість стовпців і при їх створенні відразу задати тип даних, заголовки та інші необхідні значення стовпців, наприклад:

- у властивості HeaderText доцільно вписати текст заголовка відповідного стовпця;

- у властивості ColumnType замість значення за замовчуванням (DataGridViewTextBoxColumn) для текстових і рядкових даних вибрати зі списку одне з можливих значень:

- DataGridViewComboBoxColumn - список з набором можливих текстових значень, для якого у властивості Items доцільно через Enter вписати текст можливих значень, наприклад: назви операторів мобільного зв'язку, назви посад співробітників чи то назви студентських груп;

- DataGridViewCheckBoxColumn - зазвичай відповідає логічному типу (значення true та false);

- DataGridViewImageColumn - використовується для виведення зображень;

- DataGridViewButtonColumn - використовується для виведення кнопок у клітинках таблиці;

- властивість AllowUserToAddRows дозволяє додавати нові рядки таблиці при заповненні значень останнього рядка таблиці (за замовчуванням значення true). Значення false забороняє автоматичне додавання нового рядка;

- властивість ColumnHeadersVisible дозволяє приховати заголовки стовпців при значенні false;

- RowHeadersVisible дозволяє приховати заголовки рядків при значенні false;

- властивість RowCount зберігає значення кількості рядків;

- властивість ColumnCount зберігає значення кількості стовпців;

- властивість Width задає ширину стовпця у пікселях;

- властивість ToolTipText містить текст підказки, яка виводитиметься при наведенні покажчика миші на заголовок стовпця;

- властивість AutoSizeMode дає можливість вибрати режим автоматичного формування ширини того чи іншого стовпця. Приміром, значення AllCells задасть автоматичний підбір ширини стовпця по максимальному вмісту стовпця;

- властивість ReadOnly вмикає-вимикає дозвіл редагування даних у стовпці;

- властивість SortMode надає можливість задавати режим автоматичного сортування даних у стовпці.

- Columns - колекція стовпців;

- Rows - колекція рядків;

- Font - параметри шрифту.

Розділ 2. Програмний код основного модуля з поясненнями

#pragma once

#include "Avtor.h"

#include "Zavdan.h"

#include"Zastavka.h"

#include"browser.h"

…………............

using namespace System;

using namespace System::IO;

…………............

String ^fname;

//кнопка що записуєдані до бінарого файлу

private: System::Void button1_Click (System::Object^sender,System::EventArgs^e)

{

BinaryWriter ^fb=gcnew BinaryWriter (File::Open (fname,FileMode::OpenOrCreate));

fb->Seek (0,SeekOrigin::End);

try

{

int k=dataGridView1->Rows->GetRowCount (DataGridViewElementStates::Visible);

for (int i=0; i<k-1; i++)

{

String ^номер=Convert::ToString (dataGridView1[0,i]->Value);

String ^фио=Convert::ToString (dataGridView1[1,i]->Value);

String ^пол=Convert::ToString (dataGridView1[2,i]->Value);

String ^долж=Convert::ToString (dataGridView1[3,i]->Value);

String ^прием=Convert::ToString (dataGridView1[4,i]->Value);

String ^семья=Convert::ToString (dataGridView1[5,i]->Value);

bool дети=Convert::ToBoolean (dataGridView1[6,i]->Value);

fb->Write (номер); fb->Write (фио); fb->Write (пол);

fb->Write (долж); fb->Write (прием); fb->Write (семья); fb->Write (дети);

}

dataGridView1->Rows->Clear ( );

}finally{fb->Close ( ); }

}

//кнопка, що виводить дані з бінарного файлу

private: System::Void button2_Click (System::Object^sender,System::EventArgs^e)

{

dataGridView2->Rows->Clear ( );

if (File::Exists (fname)==false){MessageBox::Show ("file not exists");

return; }

BinaryReader ^fb=gcnew BinaryReader (File::OpenRead (fname));

try{

while (fb->BaseStream->Position<fb->BaseStream->Length)

{

String ^номер=fb->ReadString ( );

String ^фио=fb->ReadString ( );

String ^пол=fb->ReadString ( );

String ^долж=fb->ReadString ( );

String ^прием=fb->ReadString ( );

String ^семья=fb->ReadString ( );

bool дети=fb->ReadBoolean ( );

dataGridView2->Rows->Add (номер,фио,пол,долж,прием,семья,дети);

}}

finally{fb->Close ( ); }

}

//кнопка, що зберігає зміни у бінарному файлі

private: System::Void button3_Click(System::Object^sender,System::EventArgs^e)

{

BinaryWriter ^fb=gcnew BinaryWriter (File::Open (fname,FileMode::Create));

fb->Seek (0,SeekOrigin::End);

try

{

int kol=dataGridView2->Rows->GetRowCount (DataGridViewElementStates::Visible); for (int i=0; i<kol; i++)

{

String ^номер=Convert::ToString (dataGridView1[0,i]->Value);

String ^фио=Convert::ToString (dataGridView1[1,i]->Value);

String ^пол=Convert::ToString (dataGridView1[2,i]->Value);

String ^долж=Convert::ToString (dataGridView1[3,i]->Value);

String ^прием=Convert::ToString (dataGridView1[4,i]->Value);

String ^семья=Convert::ToString (dataGridView1[5,i]->Value);

bool дети=Convert::ToBoolean (dataGridView1[6,i]->Value);

fb->Write (номер); fb->Write (фио); fb->Write (пол);

fb->Write (долж); fb->Write (прием); fb->Write (семья); fb->Write (дети);

}

}

finally{fb->Close ( ); }

}

private: System::Void For m1_Load (System::Object^sender,System::EventArgs^e)

{

fname="yakuts.bin";

this->Hide ( );

Zastavka^fr4=gcnew Zastavka ( );

fr4->ShowDialog ( );

}

//кнопка, що сортирує дані за алфавітом за ФИО

private: System::Void button4_Click (System::Object^sender,System::EventArgs^e)

{

button2_Click (button2,e);

dataGridView2->Sort (dataGridView2->Columns[1],ListSortDirection::Ascending);

}

//кнопка, що виводить“работников-мужчин со стажем 10 лет”

private: System::Void button5_Click (System::Object^sender,System::EventArgs^e)

{/

dataGridView3->Rows->Clear ( );

if (File::Exists (fname)==false)

{MessageBox::Show ("file not exists"); return; }

BinaryReader ^fb=gcnew BinaryReader (File::OpenRead (fname));

try

{

while (fb->BaseStream->Position<fb->BaseStream->Length)

{

String ^номер=fb->ReadString ( );

String ^фио=fb->ReadString ( );

String ^пол=fb->ReadString ( );

String ^долж=fb->ReadString ( );

String ^прием=fb->ReadString ( );

String ^семья=fb->ReadString ( );

bool дети=fb->ReadBoolean ( );

DateTimeдата=Convert::ToDateTime (прием);

TimeSpanразница=DateTime::Today-дата;

if (пол=="М"&&разница.Days/365.25>=10)dataGridView3->Rows->Add (номер,фио,пол,долж,прием,семья,дети);

}

}finally{fb->Close ( ); }

}

//кнопка, що виводить «новые кадры этого года»

private: System::Void button6_Click (System::Object^sender,System::EventArgs^e)

{//кнопка що виводить «новые кадры этого года»

int i=0;

dataGridView4->Rows->Clear ( );

if (File::Exists (fname)==false)

{MessageBox::Show ("file not exists"); return; }

BinaryReader ^fb=gcnew BinaryReader (File::OpenRead (fname));

TextWriter ^ft=gcnew StreamWriter (File::OpenWrite ("Співробітники.doc"));

try

{

ft->WriteLine ("\tСімейніспівробітники,якімаютьнеповнолітніхдітей");

while (fb->BaseStream->Position<fb->BaseStream->Length)

{

String ^номер=fb->ReadString ( );

String ^фио=fb->ReadString ( );

String ^пол=fb->ReadString ( );

String ^долж=fb->ReadString ( );

String ^прием=fb->ReadString ( );

String ^семья=fb->ReadString ( );

bool дети=fb->ReadBoolean ( );

if (семья=="Женат"&&дети||семья=="Замужем"&&дети)

{

dataGridView4->Rows->Add (номер,фио,пол,долж,прием,семья,дети);

dataGridView4->Rows[i]->HeaderCell->Value= (i+1).ToString ( );

i++;

String ^s=номер+"\t"+фио+"\t"+пол+"\t"+долж+"\t"+прием+"\t"+семья+"\t"+дети;

ft->WriteLine (s);

}}}

finally{fb->Close ( ); ft->Close ( ); }

}

Розділ 3.Створення додаткових форм та меню

//кнопка, що показує інформацію про файл

private: System::VoidдовідкаToolStripMenuItem_Click (System::Object^sender,System::EventArgs^e)

{

if (!File::Exists (fname))

{MessageBox::Show ("file not exists"); return; }

FileInfo^f=gcnew FileInfo (fname);

MessageBox::Show ("Повнеім'яфайлазданими-"+f->FullName+"\nРозмірфайла-"+ (f->Length).ToString ( )+"байтів.\nЧасстворення-"+f->CreationTime.ToString ( )+"\nЧасостанньоїопераціїдописуванняданих-"+f->LastWriteTime.ToString ( ));

}

//кнопка, що робить резервне копіювання бінарного файла

private: System::Void резервнеКопіюваняяБінарногоФайлаToolStripMenuItem_Click (System::Object^sender,System::EventArgs^e)

{

if (!Directory::Exists ("Copy"))

Directory::CreateDirectory ("Copy");

FileInfo^f=gcnew FileInfo (fname);

f->CopyTo ("Copy\\"+fname,true);

}

//кнопка, що виключає програму

private: System::Void вихыдToolStripMenuItem_Click(System::Object^sender,System::EventArgs^e)

{

Close ( );

}

//кнопка, що показує інформацію про автора

private: System::Void проАвтораToolStripMenuItem_Click_1 (System::Object^sender,System::EventArgs^e)

{

Avtor^fr2= gcnew Avtor ( ); fr2->ShowDialog ( );

}

//кнопка, що показує форму з завданням

private: System::Void проЗавданняToolStripMenuItem_Click_1 (System::Object^sender,System::EventArgs^e)

{

Zavdan^fr3= gcnew Zavdan ( ); fr3->ShowDialog ( );

}

//кнопка, що видаляє дані про сімейних працівників, що мають неповнолітніх дітей

private: System::Void button7_Click (System::Object^sender,System::EventArgs^e)

{

int i=0;

dataGridView3->Rows->Clear ( );

if (File::Exists (fname)==false)

{

MessageBox::Show ("file not exists");

return;

}

BinaryReader ^fb= gcnew BinaryReader (File::OpenRead (fname));

BinaryWriter ^tmp= gcnew BinaryWriter (File::Open ("tmp.bin",FileMode::Create));

try

{

while (fb->BaseStream->Position<fb->BaseStream->Length)

{

String ^номер=fb->ReadString ( );

String ^фио=fb->ReadString ( );

String ^пол=fb->ReadString ( );

String ^долж=fb->ReadString ( );

String ^прием=fb->ReadString ( );

String ^семья=fb->ReadString ( );

bool дети=fb->ReadBoolean ( );

if (DateTime::Today.Year==Convert::ToDateTime (прием).Year)

{

dataGridView3->Rows->Add (номер,фио,пол,долж,прием,семья,дети);

dataGridView3->Rows[i]->HeaderCell->Value= (i+1).ToString ( );

i++;

}

else

{

tmp->Write (номер); tmp->Write (фио); tmp->Write (пол);

tmp->Write (долж); tmp->Write (прием); tmp->Write (семья); tmp->Write (дети);

}}

tmp->Close ( );

if (!i)

{

MessageBox::Show ("Такихзаписівуфайлінеіснує");

File::Delete ("tmp.bin");

}

else

if (MessageBox::Show (L"Видійснобажаєтевидалитицізаписизфайла?",L"Видалитиданізфайла?",System::Windows::For ms::MessageBoxButtons::YesNo)==System::Windows::For ms::DialogResult::Yes)

{

fb->Close ( );

File::Replace ("tmp.bin",fname,"Copy\\"+fname);

dataGridView3->Rows->Clear ( );

MessageBox::Show ("Дляпереглядуновоговмістуфайлаперейдітьнадругувкладку.");

}

else File::Delete ("tmp.bin");

}

finally{fb->Close ( ); }

}

//кнопка, що очищає бінарний файл

private: System::Void очичтитиБінарнийФайлToolStripMenuItem_Click (System::Object^sender,System::EventArgs^e)

{

BinaryWriter ^fb= gcnew BinaryWriter (File::Open (fname,FileMode::Create));

fb->Close ( ); dataGridView2->Rows->Clear ( );

}

Додатково я вирішив додати до свого завдання форму з браузером, у якій можливо переглядати деяку веб-інформацію.

//кнопка, що відкриває браузер з веб-інформацією

private: System::Void вебинформацияToolStripMenuItem_Click (System::Object^sender,System::EventArgs^e)

{

browser^fr4= gcnew browser ( ); fr4->ShowDialog ( );

}

Код формы з браузером:

//Кнопка яка відкриває в елементі browser1(WebBrawser)сторінку, адрес сторінки //береться з елементу address(TextBox)

private: System::Void start_Click(System::Object^sender,System::EventArgs^ e)

{

browser1->Navigate(adress->Text);

}

//Кнопка якапереходить на сторінку “google.com”

private: System::Void home_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->Navigate("http://google.com");

}

//Кнопка якаобновлює сторінку

private: System::Void refresh_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->Refresh();

}

//Кнопка яка переходить на сторінку вперед

private: System::Void forward_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->GoForward();

}

//Кнопка яка переходить на сторінку назад

private: System::Void back_Click(System::Object^ sender,System::EventArgs^ e)

{

browser1->GoBack();

}

//Кнопка яка дозволяє при натисканні на кнопку «ентер» при вводі адресу в //елемент adress(TextBox)

private: System::Void adress_KeyDown(System::Object^ sender, System::Windows::Forms::KeyEventArgs^ e)

{

if(e->KeyCode==Keys::Enter)

{

browser1->Navigate(adress->Text);

}

}

//при запуску форми с браузером відкривається сторінка «google.com»и форма //стає на весь екран(Рис. 4.6.1)

private: System::Void browser_Load(System::Object^ sender, System::EventArgs^ e)

{

browser1->Navigate("http://google.com");

WindowState = FormWindowState::Maximized;

}

//коли сторінка в browser1 відкрилася її адрес записується до елементу address //(Рис. 4.6.2.)

private: System::Void browser1_DocumentCompleted(System::Object^ sender, System::Windows::Forms::WebBrowserDocumentCompletedEventArgs^ e)

{

adress->Text=browser1->Url->ToString();

}

//при натисканні відкривається «http://www.microsoft.com/uk-ua»

private: System::Void сайтКомпанииToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->Navigate("http://www.microsoft.com/uk-ua");

}

//при натисканні відкривається «http://vk.com/id164543224»(Рис. 4.6.3.)

private: System::Void страниуаАвтораToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->Navigate("http://vk.com/id164543224");

}

//при натисканні відкривається «https://e.mail.ru/compose»

private: System::Void написатьПисьмоАвторуToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e)

{

browser1->Navigate("https://e.mail.ru/compose");

}

Розділ 4.Здобуті результати у вигляді форм проекту

Рис. 4.1. Вигляд головної форми після натиснення кнопки "Просмотр бинарного файла" на вкладці "Вывод содержания файла"

Рис. 4.2. Вигляд головної форми після натиснення кнопки "Сортировка за алфавитом" на вкладці "Вывод содержания файла"

Рис. 4.3. Вигляд головної форми після натиснення кнопки "Работники со стаем больше 10 лет" на вкладці "Выбор данных а условием"

Рис. 4.4. Вигляд головної форми після натиснення кнопки "Семейные работники имеющие несовершеннолетних детей" на вкладці "Формирование текстового файла" й вигляд самого текстового файла.

Рис. 4.5. Вигляд головної форми після натиснення кнопки "Новые кадры этого года" на вкладці "Выбор данных за условием"

Рис. 4.6.1 Початкова сторінка

Рис. 4.6.2 Адрес сторінки в елементі «adress»

Рис 4.6.3«Сайт компанїї»

Рис 4.6.3«Страница автора»

Рис 4.6.3«Написать письмо автору»

Висновки

В ході курсової роботи я на практиці застосував своїзнання створення файлів даних засобами Visual Studio C++ з можливістю редагування, дописування та видалення даних. Набув навиків роботи з візуальним інтерфейсом, створенням: меню, діалогових вікон, декількох взаємодіючих форм.Додатково я вивчив створення форми звеб-браузером на формі використовуючи елемент WebBrowser и toolStript.

Список використаних джерел

1. Библиотека классов платформы .NET Framework. [Электронный ресурс]. - Режим доступа: http://msdn.microsoft.com/ru-ru/library/gg145045 (v=vs.110).aspx. - Название с экрана.

2. Зиборов В. В. MS Visual C++ 2010 в среде .NET. Библиотека программиста / Зиборов В. В. - СПб. : Питер, 2012. - 320 с.

3. Хортон А. Visual C++ 2010: полный курс.; пер. с англ. / Хортон А. - М. : ООО "И.Д. Вильямс", 2011. - 1216 с.

4. Довбуш Г. Ф. Visual C++ на примерах / Г.Ф. Довбуш, А.Д. Хомоненко ; под ред. проф. А.Д. Хомоненко. - СПб. : БХВ-Петербург, 2007. - 528 с.

5. Visual C++ .NET: пособие для разработчиков C++ / [А. Корера, С. Фрейзер, С. Джентайл и др.]. - М. : ЛОРИ, 2003. - 398 с.

6. Дейтел Х. М. Как программировать на С++; пер с англ. / Х. М. Дейтел, П. Дж. Дейтел. - М. : ООО "Бином-Пресс", 2008. - 1456 с.

7. Стивен Прата. Язык программирования С++. Лекции и упражнения : учебник ; пер с англ. / Стивен Прата. - СПб.: ООО "ДиаСофтЮП", 2005. - 1104 с.

8. Страуструп Б. Язык программирования С++. Специальное издание ; пер. с англ. / Страуструп Б. - М. : ООО "Бином-Пресс", 2006. - 1104 с.

9. C++. Основи програмування. Теорія та практика: підручник / [О. Г. Трофименко, Ю. В. Прокоп, І. Г. Швайко, Л. М. Буката та ін.] ; за ред. О. Г. Трофименко. - Одеса : Фенікс, 2010. - 544 с.

10. C++. Теорія та практика: навч. посіб. з грифом МОНУ/ [О. Г. Трофименко, Ю. В. Прокоп, І. Г. Швайко, Л. М. Буката та ін.] ; за ред. О. Г. Трофименко. - Одеса : ВЦ ОНАЗ, 2011. - 587 с.

11. Трофименко О. Г. Основи програмування. Базові алгоритми : метод. вказівки для лаб. і практ. робіт / Трофименко О. Г., Прокоп Ю. В., Швайко І. Г., Буката Л. М. - Ч. 1. - Одеса: ВЦ ОНАЗ ім. О. С. Попова, 2014. - 108 с.

12. Трофименко О. Г. Основи програмування. Опрацювання структурованих типів : метод. вказівки для лаб. і практ. робіт / Трофименко О. Г., Прокоп Ю. В., Швайко І. Г., Буката Л. М. - Ч. 2. - Одеса: ВЦ ОНАЗ ім. О. С. Попова, 2014. - 130 с.

Размещено на Allbest.ru


Подобные документы

  • Відомості про програму С++ Builder. Програмний код обох складових створюваної бібліотеки користувача: заголовного файлу та файлу реалізації. Програмний код для елементів керування головної форми. Етапи створення та доручення до проекту додаткових форм.

    курсовая работа [222,1 K], добавлен 24.10.2012

  • Створення нової бази даних та таблиць MS Access. Пов’язування таблиць та індексування їх за тими полями, по яким створюється зв’язок. Створення запиту на вибірку в режимі конструктора. Створення екранних форм для роботи з даними за допомогою майстра форм.

    контрольная работа [26,6 K], добавлен 04.02.2013

  • Створення баз даних і введення даних. Створення бази даних за допомогою майстра. Створення таблиць. Створення таблиці в режимі конструктора. Створення запитів за допомогою майстра. Додавання полів у бланк запиту. Зміна порядку полів.

    реферат [17,1 K], добавлен 07.10.2004

  • Система управління базами даних, ієрархічна модель даних, її проектування та створення. Інтерфейс Microsoft Access, створення структури таблиці, запитів, форм, звітів, макросів. Аналіз зв'язків між таблицями, що описують поняття проблемного середовища.

    курсовая работа [2,7 M], добавлен 10.11.2010

  • Створення інформаційних таблиць бази даних. Створення екранних форм як засобу організації інтерфейсу користувача. Створення запитів для вибору, сортування і обчислення з використанням даних однієї таблиці. Оформлення звітів за допомогою команд MS Access.

    лабораторная работа [397,7 K], добавлен 09.09.2010

  • Інформаційні системи ти засоби їх програмної реалізації. Створення файлу даних на магнітному диску. Опис створення програми. Прийоми проектування і реалізації реляційних баз даних і таблиць в СУБД Visual FoxPro 6.0. Характерна риса файлового підходу.

    курсовая работа [4,1 M], добавлен 16.01.2011

  • Загальні характеристики та структура найпростішої бази даних. Режими роботи з нею. Основні властивості полів таблиць. Створення запиту, зв’язків, звіту та макросу. Програмне забезпечення для створення БД. Нові можливості макросів в Office Access 2007.

    дипломная работа [4,5 M], добавлен 01.03.2014

  • Проектування бази даних: визначення об’єктів, структура таблиць, побудова схеми даних, забезпечення цілісності даних, створення певних відношень між таблицями, створення запитів, побудова форм, оформлення об’єктів. Розробка інструкції користувача.

    курсовая работа [1,9 M], добавлен 19.09.2014

  • Опрацювання та класифікації електронної інформації по магазину товарів для садівництва. Предметна область інтелектуальної системи проходження замовлень сільсько-господарських культу. Створення таблиць і звітів, що складають основу проектованої бази даних.

    отчет по практике [2,2 M], добавлен 24.02.2015

  • Поняття та переваги реляційної бази, автоматизація аналізу даних. Опис основних компонентів сховища даних AS/400. Процес перетворення оперативних даних в інформаційні. Багатовимірні бази даних (MDD). Опис даних і створення файлів в інтеграційних базах.

    реферат [36,8 K], добавлен 14.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.