Сделай Сам Свою Работу на 5

ОПИСАНИЕ АЛГОРИТМОВ РЕШЕНИЯ ЗАДАЧИ





4.1 Метод long Flat::Size() – Количество записей в файле

1. Начало.

2. Установка указателя на конец файла

3. Установка указателя на начало файла

4. Вычисление разности между началом и концом.

5. Вычисление количества записей в файле

6. Возврат количества записей

7. Конец

4.2 Метод System::Voidadd_click() – Кнопка добавить клиента

1. Начало.

2. Выделение памяти под нового клиента

3. Заполнение полей клиента

4. Добавление клиента в конец списка

5. Добавление фамилии в listBox1

6. Конец.

4.3 МетодSystem::VoidbEdit2_Click() – Событие на нажатие кнопки изменения клиента

1. Начало.

2. Если индекс выбранного клиента -1, сообщение об ошибке

3. Если textBox1 только для чтения, снять флаг только для чтения

4. Иначе меняем данные о клиенте

5. Выводим новую фамилию в listBox1

6. Конец.


4.4 Метод System::VoidbAdd1_Click()– Создание диалогового окна

1. Начало.

2. Выделение памяти под форму

3. Настройка свойств элементов управления

4. Присваивание кнопке события

5. Размещение элементов управления на форме

6. Отображение диалогового окна

7. Конец.

4.5 МетодSystem::VoidForm1_FormClosed()–Закрытие формы

Рисунок 4.1 Блок-схема алгоритма освобождения памяти


4.6 Метод ContH * ContH::Del() – Удаление элемента из списка



Рисунок 4.2 Блок-схема алгоритма удаления элемента списка


4.7 Метод ContH * ContH::Item(int i, ContH * B) – Возврат i-го элемента из списка

Рисунок 4.3 Блок-схема алгоритма возврата i-го элемента списка


4.8 МетодSystem::VoidbDel1_Click()- Удаление клиента через listBox1

Рисунок 4.4 Блок-схема алгоритма удаления клиента через listBox1


ЗАКЛЮЧЕНИЕ

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

Программный продукт выполнен в среде программирования Microsoft Visual Studio Team System 2008, с использованием проекта CLR Windows Forms Application.


ЛИТЕРАТУРА

1. Харви М. Дейтел, Пол Дж. Дейтел - Как программировать на C++ - 2008

2. Джеффри Рихтер WINDOWS для профессионалов. Создание эффективных Win32-приложений с учетом специфики 64-разрядной версии Windows.

3. Информационный портал: http://msdn.microsoft.com



Обозначение Наименование Дополнительные сведения
  Текстовые документы  
     
БГУИР КП 1-58 01 01 19 ПЗ Пояснительная записка 24 с.
  Листинг программы 25 с.
     
  Графические документы  
   
  Скриншоты программы Формат А4
  Диаграмма классов Формат А4
  Блок-схемы алгоритмов Формат А4
     
     
     
     
     
     
     
     
     
     
     
     
                     
                     
                     
     
     
     
     
     
     
          БГУИР КП 1-58 01 01 19 ПЗ
         
         
Изм. Л. № Докум. Подп. Дата Информационная система по продаже недвижимости Ведомость курсового проекта   Лист Листов
Разраб. Болотина П.Ю.   21.12.12 Т    
Пров. Насуро Е.В.   21.12.12
       
       
       
                           

ПРИЛОЖЕНИЕ А – Листинг программы

//BaseFlats.h

#ifndef BASEFLATS_H

#define BASEFLATS_H

#include<stdio.h>

usingnamespace System::Windows::Forms;



usingnamespace System::Windows;

usingnamespace System;

class FlatBase // Базовый класс адресов

{

protected:

wchar_t Addr[260];

wchar_t Square[5];

wchar_t Price[10];

bool IsTel;

FILE *F;

public:

void uninit(); // Снятьпривязкукфайлу

virtuallong Size() = 0;// Количество записей в файле

virtualvoid input(int i, DataGridView^ dgv) = 0; // Заполняет поля объекта класса значениями из DataGridView

virtualvoid SaveToF() = 0; // Сохранение в файл одного объекта

virtualbool ReadFromF(int i) = 0; // Чтение i-гообъектаизфайла

virtualvoid view(int i, DataGridView^ dgv) = 0; // Отображаетданныеоб i-мобъектев DataGridView

virtualvoid init(char f = 'r') = 0;// Привязкакфайлу

};

class Flat : public FlatBase

{

private:

wchar_t NumOfRoom[3];

wchar_t Floor[3];

bool nalichremonta;

bool IsEmpty;

public:

virtuallong Size();

virtualvoid input(int i, DataGridView^ dgv);

virtualvoid SaveToF();

virtualbool ReadFromF(int i);

virtualvoid view(int i, DataGridView^ dgv);

virtualvoid init(char f = 'r');//значение параметра по умолчанию

};

class House : public FlatBase

{

private:

wchar_t NumOfFloors[3];

wchar_t TypeOfHeat[30];

wchar_t NumOfFlats[5];

wchar_t NumOfRooms[3];

bool Sewers;

public:

virtuallong Size();

virtualvoid input(int i, DataGridView^ dgv);

virtualvoid SaveToF();

virtualbool ReadFromF(int i);

virtualvoid view(int i, DataGridView^ dgv);

virtualvoid init(char f = 'r');

};

class Commercial : public FlatBase

{

private:

wchar_t NumOfFloors[3];

public:

virtuallong Size();

virtualvoid input(int i, DataGridView^ dgv);

virtualvoid SaveToF();

virtualbool ReadFromF(int i);

virtualvoid view(int i, DataGridView^ dgv);

virtualvoid init(char f = 'r');

};

class Human

{

private:

wchar_t FIO[100];

wchar_t Tel[20];

wchar_t Addr[260];

FILE *F;

public:

long Size();

void SaveToF();

bool ReadFromF(int i);

void init(char f = 'r');

void uninit();

void Input(String^ fio, String^ tel, String^ adr);// Заполнениеполейобъектаклассазначениями

String^ OutFIO(); // Возвращает ФИО

String^ OutTel(); // Возвращает Телефон

String^ OutAddr(); // ВозвращаетАдрес

};

class ContH

{

private:

ContH *next, *prev;// Указатели на следующий и предыдущий элементы списка

Human *H; // Указатель на объект класса Human

public:

ContH(); // Конструктор класса ContH

ContH * Add(Human * h); // Добавляет объект класса Human в список и возвращает указатель на следующий элемент списка

ContH * Del(); // Удаляет объект класса Human из списка и возвращает указатель на предыдущий элемент списка

ContH * Next(); // Возвращает указатель на следующий элемент списка

ContH * Prev(); // Возвращает указатель на предыдущий элемент списка

Human * Value(); // Возвращает указатель на объект класса Human

ContH * Item(int i, ContH * B);// Возвращает i-йэлементсписка

};

#endif

//BaseFlats.cpp

#include"stdafx.h"

#include"BaseFlats.h"

void FlatBase::uninit()

{

fclose(F);

}

// ------Описание методов класса Flat------

long Flat::Size()

{

F = fopen("Database\\Flats.f","rb");

long fle,flb;

fseek(F,0,2); // Установка указателя на конец файла

fle = ftell(F); // Возвращает значение установленного указателя

fseek(F,0,0); // Установка указателя на начало файла

flb = ftell(F);

fclose(F);

return (fle - flb)/sizeof(Flat);

}

void Flat::init(char f)

{

if (f == 'r') F = fopen("Database\\Flats.f","rb");

if (f == 'w') F = fopen("Database\\Flats.f","wb");

if (f == 'a') F = fopen("Database\\Flats.f","ab");

}

void Flat::input(int i, DataGridView ^dgv)// заполнениеизячеекдгввобъект

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString();

for(int j=0;j<s->Length;j++) Addr[j] = s[j];

Addr[s->Length] = '\0';

s = dgv->Rows[i]->Cells[1]->Value->ToString();

for(int j=0;j<s->Length;j++) Square[j] = s[j];

Square[s->Length] = '\0';

s = dgv->Rows[i]->Cells[2]->Value->ToString();

for(int j=0;j<s->Length;j++) NumOfRoom[j] = s[j];

NumOfRoom[s->Length] = '\0';

s = dgv->Rows[i]->Cells[3]->Value->ToString();

for(int j=0;j<s->Length;j++) Floor[j] = s[j];

Floor[s->Length] = '\0';

IsTel = (bool)dgv->Rows[i]->Cells[4]->Value;

nalichremonta = (bool)dgv->Rows[i]->Cells[5]->Value;

IsEmpty = (bool)dgv->Rows[i]->Cells[6]->Value;

s = dgv->Rows[i]->Cells[7]->Value->ToString();

for(int j=0;j<s->Length;j++) Price[j] =s[j];

Price[s->Length] = '\0';

}

void Flat::view(int i, DataGridView ^ dgv)//изобъектавдгв

{

String ^ tmp = gcnew String(Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String(Square);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String(NumOfRoom);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String(Floor);

dgv->Rows[i]->Cells[3]->Value = tmp;

dgv->Rows[i]->Cells[4]->Value = IsTel;

dgv->Rows[i]->Cells[5]->Value = nalichremonta;

dgv->Rows[i]->Cells[6]->Value = IsEmpty;

tmp = gcnew String(Price);

dgv->Rows[i]->Cells[7]->Value = tmp;

}

void Flat::SaveToF()

{

fwrite(this,sizeof(Flat),1,F);

}

bool Flat::ReadFromF(int k)

{

fseek(F,k*sizeof(Flat),0);

char *A;

A = newchar[sizeof(Flat)];

if(!fread(A,sizeof(Flat),1,F)) returnfalse;

int i = 4;

while (A[i]!='\0') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '\0';

i = 524;// перескакиваем на следующее поле

while (A[i]!='\0') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '\0';

i = 534;

while (A[i]!='\0') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '\0';

IsTel = (bool)(A[554]);

i = 560;

while (A[i]!='\0') {NumOfRoom[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfRoom[(i-560)/2] = '\0';

i = 566;

while (A[i]!='\0') {Floor[(i-566)/2] = A[i]+A[i+1]*256;i+=2;}

Floor[(i-566)/2] = '\0';

nalichremonta = (bool)(A[572]);

IsEmpty = (bool)(A[573]);

returntrue;

}

// ------Описаниеметодовкласса House------

long House::Size()

{

F = fopen("Database\\Houses.hs","rb");

long fle,flb;

fseek(F,0,2);

fle = ftell(F);

fseek(F,0,0);

flb = ftell(F);

fclose(F);

return (fle - flb)/sizeof(House);

}

void House::init(char f)

{

if (f == 'r') F = fopen("Database\\Houses.hs","rb");

if (f == 'w') F = fopen("Database\\Houses.hs","wb");

if (f == 'a') F = fopen("Database\\Houses.hs","ab");

}

void House::SaveToF()

{

fwrite(this,sizeof(House),1,F);

}

bool House::ReadFromF(int k)

{

fseek(F,k*sizeof(House),0);

char *A;

A = newchar[sizeof(House)];

if(!fread(A,sizeof(House),1,F)) returnfalse;

int i = 4;

while (A[i]!='\0') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '\0';

i = 524;

while (A[i]!='\0') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '\0';

i = 534;

while (A[i]!='\0') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '\0';

IsTel = (bool)(A[554]);

i = 560;

while (A[i]!='\0') {NumOfFloors[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFloors[(i-560)/2] = '\0';

i = 566;

while (A[i]!='\0') {TypeOfHeat[(i-566)/2] = A[i]+A[i+1]*256;i+=2;}

TypeOfHeat[(i-566)/2] = '\0';

i = 626;

while (A[i]!='\0') {NumOfFlats[(i-626)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFlats[(i-626)/2] = '\0';

i = 636;

while (A[i]!='\0') {NumOfRooms[(i-636)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfRooms[(i-636)/2] = '\0';

Sewers = (bool)A[642];

returntrue;

}

void House::view(int i, DataGridView^ dgv)

{

String ^ tmp = gcnew String(Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String(Square);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String(NumOfFloors);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String(NumOfFlats);

dgv->Rows[i]->Cells[3]->Value = tmp;

tmp = gcnew String(NumOfRooms);

dgv->Rows[i]->Cells[4]->Value = tmp;

tmp = gcnew String(TypeOfHeat);

dgv->Rows[i]->Cells[5]->Value = tmp;

dgv->Rows[i]->Cells[6]->Value = Sewers;

dgv->Rows[i]->Cells[7]->Value = IsTel;

tmp = gcnew String(Price);

dgv->Rows[i]->Cells[8]->Value = tmp;

}

void House::input(int i,DataGridView^ dgv)

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString();

for(int j=0;j<s->Length;j++) Addr[j] = s[j];

Addr[s->Length] = '\0';

s = dgv->Rows[i]->Cells[1]->Value->ToString();

for(int j=0;j<s->Length;j++) Square[j] = s[j];

Square[s->Length] = '\0';

s = dgv->Rows[i]->Cells[2]->Value->ToString();

for(int j=0;j<s->Length;j++) NumOfFloors[j] = s[j];

NumOfFloors[s->Length] = '\0';

s = dgv->Rows[i]->Cells[3]->Value->ToString();

for(int j=0;j<s->Length;j++) NumOfFlats[j] = s[j];

NumOfFlats[s->Length] = '\0';

s = dgv->Rows[i]->Cells[4]->Value->ToString();

for(int j=0;j<s->Length;j++) NumOfRooms[j] = s[j];

NumOfRooms[s->Length] = '\0';

s = dgv->Rows[i]->Cells[5]->Value->ToString();

for(int j=0;j<s->Length;j++) TypeOfHeat[j] = s[j];

TypeOfHeat[s->Length] = '\0';

Sewers = (bool)dgv->Rows[i]->Cells[6]->Value;

IsTel = (bool)dgv->Rows[i]->Cells[7]->Value;

s = dgv->Rows[i]->Cells[8]->Value->ToString();

for(int j=0;j<s->Length;j++) Price[j] =s[j];

Price[s->Length] = '\0';

}

// ------Описаниеметодовкласса Comercial------

long Commercial::Size()

{

F = fopen("Database\\Commercial.cm","rb");

long fle,flb;

fseek(F,0,2);

fle = ftell(F);

fseek(F,0,0);

flb = ftell(F);

fclose(F);

return (fle - flb)/sizeof(Commercial);

}

void Commercial::init(char f)

{

if (f == 'r') F = fopen("Database\\Commercial.cm","rb");

if (f == 'w') F = fopen("Database\\Commercial.cm","wb");

if (f == 'a') F = fopen("Database\\Commercial.cm","ab");

}

void Commercial::SaveToF()

{

fwrite(this,sizeof(Commercial),1,F);

}

void Commercial::view(int i, DataGridView^ dgv)

{

String ^ tmp = gcnew String(Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String(NumOfFloors);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String(Square);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String(Price);

dgv->Rows[i]->Cells[3]->Value = tmp;

}

void Commercial::input(int i, DataGridView ^dgv)

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString();

for(int j=0;j<s->Length;j++) Addr[j] = s[j];

Addr[s->Length] = '\0';

s = dgv->Rows[i]->Cells[1]->Value->ToString();

for(int j=0;j<s->Length;j++) NumOfFloors[j] = s[j];

NumOfFloors[s->Length] = '\0';

s = dgv->Rows[i]->Cells[2]->Value->ToString();

for(int j=0;j<s->Length;j++) Square[j] = s[j];

Square[s->Length] = '\0';

s = dgv->Rows[i]->Cells[3]->Value->ToString();

for(int j=0;j<s->Length;j++) Price[j] =s[j];

Price[s->Length] = '\0';

}

bool Commercial::ReadFromF(int k)

{

fseek(F,k*sizeof(Commercial),0);

char *A;

A = newchar[sizeof(Commercial)];

if(!fread(A,sizeof(Commercial),1,F)) returnfalse;

int i = 4;

while (A[i]!='\0') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '\0';

i = 524;

while (A[i]!='\0') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '\0';

i = 534;

while (A[i]!='\0') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '\0';

i = 560;

while (A[i]!='\0') {NumOfFloors[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFloors[(i-560)/2] = '\0';

returntrue;

}

// ------Описаниеметодовкласса Human------

void Human::init(char f)

{

if (f == 'r') F = fopen("Database\\Humans.hm","rb");

if (f == 'w') F = fopen("Database\\Humans.hm","wb");

if (f == 'a') F = fopen("Database\\Humans.hm","ab");

}

void Human::uninit()

{

fclose(F);

}

void Human::SaveToF()

{

fwrite(this,sizeof(Human),1,F);

}

bool Human::ReadFromF(int k)

{

fseek(F,k*sizeof(Human),0);

char *A;

A = newchar[sizeof(Human)];

if(!fread(A,sizeof(Human),1,F)) returnfalse;

int i = 0;

while (A[i]!='\0') {FIO[(i)/2] = A[i]+A[i+1]*256;i+=2;}

FIO[(i)/2] = '\0';

i = 200;

while (A[i]!='\0') {Tel[(i-200)/2] = A[i]+A[i+1]*256;i+=2;}

Tel[(i-200)/2] = '\0';

i = 240;

while (A[i]!='\0') {Addr[(i-240)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-240)/2] = '\0';

returntrue;

}

void Human::Input(String^ fio, String^ tel, String^ adr)

{

for(int i = 0;i<fio->Length;i++) FIO[i] = fio[i];//преобразование string в wchar_t

FIO[fio->Length] = '\0';

for(int i = 0;i<tel->Length;i++) Tel[i] = tel[i];

Tel[tel->Length] = '\0';

for(int i = 0;i<adr->Length;i++) Addr[i] = adr[i];

Addr[adr->Length] = '\0';

}

String^ Human::OutFIO()

{

returngcnew String(FIO);

}

String^ Human::OutTel()

{

returngcnew String(Tel);

}

String^ Human::OutAddr()

{

returngcnew String(Addr);

}

long Human::Size()

{

F = fopen("Database\\Humans.hm","rb");

long fle,flb;

fseek(F,0,2);

fle = ftell(F);

fseek(F,0,0);

flb = ftell(F);

fclose(F);

return (fle - flb)/sizeof(Human);

}

// ------Описание методов класса контейнера для клиентов------

ContH::ContH()

{

prev = next = nullptr;

H = new Human;

}

ContH * ContH::Add(Human * h)

{

ContH * t = new ContH;

this->H = h;

this->next = t;

t->next = nullptr;

t->prev = this;

return t;

}

ContH * ContH::Del()

{

ContH * t,*d;

d = this;

if(this->next == nullptr)

{

if(this->prev != nullptr)

{

t = d->prev;

t->next = nullptr;

delete d;

return t;

}

return d;

}

else

{

if(this->prev == nullptr)

{

t = d->next;

t->prev = nullptr;

delete d;

return t;

}

t = d->prev;

t->next = d->next;

t->next->prev = t;

delete d;

return t;

}

}

ContH * ContH::Next()

{

returnthis->next;

}

ContH * ContH::Prev()

{

returnthis->prev;

}

Human * ContH::Value()

{

return H;

}

ContH * ContH::Item(int i, ContH * B)

{

ContH * t = B;

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

t = t->Next();

return t;

}

//Form1.h

#include"BaseFlats.h"

#include<string.h>

#pragmaonce

ContH *beg,*end;

namespace Flats {

usingnamespace System;

usingnamespace System::ComponentModel;

usingnamespace System::Collections;

usingnamespace System::Windows::Forms;

usingnamespace System::Data;

usingnamespace System::Drawing;

/// <summary>

/// Summary for Form1

///

/// WARNING: If you change the name of this class, you will need to change the

/// 'Resource File Name' property for the managed resource compiler tool

/// associated with all .resx files this class depends on. Otherwise,

/// the designers will not be able to interact properly with localized

/// resources associated with this form.

/// </summary>

publicrefclass Form1 : public System::Windows::Forms::Form

{

public:

Form1(void)

{

InitializeComponent();

//

//TODO: Add the constructor code here

//

}

protected:

/// <summary>

/// Clean up any resources being used.

/// </summary>

~Form1()

{

if (components)

{

delete components;

}

}

protected:

private: System::Windows::Forms::DataGridView^ dataGridView1;

private: System::Windows::Forms::DataGridView^ dataGridView2;

private: System::Windows::Forms::DataGridView^ dataGridView3;

private: System::Windows::Forms::TabControl^ tabControl1;

private: System::Windows::Forms::TabPage^ flatsPage;

private: System::Windows::Forms::TabPage^ housePage;

private: System::Windows::Forms::TabPage^ commPage;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column1;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column4;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column9;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column5;

private: System::Windows::Forms::DataGridViewCheckBoxColumn^ Column6;

private: System::Windows::Forms::DataGridViewCheckBoxColumn^ Column7;

private: System::Windows::Forms::DataGridViewCheckBoxColumn^ Column8;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column10;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn2;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn3;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn4;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn5;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn1;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ Column2;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn6;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn7;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn8;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn9;

private: System::Windows::Forms::DataGridViewCheckBoxColumn^ dataGridViewCheckBoxColumn1;

private: System::Windows::Forms::DataGridViewCheckBoxColumn^ Column3;

private: System::Windows::Forms::DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn10;

private: System::Windows::Forms::ListBox^ listBox1;

private: System::Windows::Forms::TextBox^ textBox1;

private: System::Windows::Forms::TextBox^ textBox2;

private: System::Windows::Forms::TextBox^ textBox3;

private: System::Windows::Forms::MenuStrip^ menuStrip1;

private: System::Windows::Forms::ToolStripMenuItem^ fileToolStripMenuItem;

private: System::Windows::Forms::ToolStripMenuItem^ saveToolStripMenuItem;

private: System::Windows::Forms::ToolStripMenuItem^ exitToolStripMenuItem;

private: System::Windows::Forms::ToolStripMenuItem^ edToolStripMenuItem;

private: System::Windows::Forms::ToolStripMenuItem^ editToolStripMenuItem;

private: System::Windows::Forms::Button^ bAdd1;

private: System::Windows::Forms::Button^ bEdit2;

private: System::Windows::Forms::Button^ bDel1;

private: System::Windows::Forms::Form^ f1;

private: System::Windows::Forms::TextBox^ tb1;

private: System::Windows::Forms::TextBox^ tb2;

private: System::Windows::Forms::TextBox^ tb3;

private: System::Windows::Forms::Button^ bAdd;

private:

/// <summary>

/// Required designer variable.

/// </summary>

System::ComponentModel::Container ^components;

#pragmaregion Windows Form Designer generated code

/// <summary>

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// </summary>

void InitializeComponent(void)

{

this->dataGridView1 = (gcnew System::Windows::Forms::DataGridView());

this->Column1 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->Column4 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->Column9 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->Column5 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->Column6 = (gcnew System::Windows::Forms::DataGridViewCheckBoxColumn());

this->Column7 = (gcnew System::Windows::Forms::DataGridViewCheckBoxColumn());

this->Column8 = (gcnew System::Windows::Forms::DataGridViewCheckBoxColumn());

this->Column10 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridView2 = (gcnew System::Windows::Forms::DataGridView());

this->dataGridViewTextBoxColumn1 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->Column2 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn6 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn7 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn8 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn9 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewCheckBoxColumn1 = (gcnew System::Windows::Forms::DataGridViewCheckBoxColumn());

this->Column3 = (gcnew System::Windows::Forms::DataGridViewCheckBoxColumn());

this->dataGridViewTextBoxColumn10 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->tabControl1 = (gcnew System::Windows::Forms::TabControl());

this->flatsPage = (gcnew System::Windows::Forms::TabPage());

this->housePage = (gcnew System::Windows::Forms::TabPage());

this->commPage = (gcnew System::Windows::Forms::TabPage());

this->dataGridView3 = (gcnew System::Windows::Forms::DataGridView());

this->dataGridViewTextBoxColumn2 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn3 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn4 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->dataGridViewTextBoxColumn5 = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());

this->listBox1 = (gcnew System::Windows::Forms::ListBox());

this->bEdit2 = (gcnew System::Windows::Forms::Button());

this->textBox1 = (gcnew System::Windows::Forms::TextBox());

this->textBox2 = (gcnew System::Windows::Forms::TextBox());

this->textBox3 = (gcnew System::Windows::Forms::TextBox());

this->menuStrip1 = (gcnew System::Windows::Forms::MenuStrip());

this->fileToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->saveToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->exitToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->edToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->editToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->bAdd1 = (gcnew System::Windows::Forms::Button());

this->bDel1 = (gcnew System::Windows::Forms::Button());

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView1))->BeginInit();

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView2))->BeginInit();

this->tabControl1->SuspendLayout();

this->flatsPage->SuspendLayout();

this->housePage->SuspendLayout();

this->commPage->SuspendLayout();

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView3))->BeginInit();

this->menuStrip1->SuspendLayout();

this->SuspendLayout();

//

// dataGridView1

//

this->dataGridView1->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;

this->dataGridView1->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(8) {this->Column1,

this->Column4, this->Column9, this->Column5, this->Column6, this->Column7, this->Column8, this->Column10});

this->dataGridView1->Location = System::Drawing::Point(0, 0);

this->dataGridView1->Name = L"dataGridView1";

this->dataGridView1->RowTemplate->Height = 24;

this->dataGridView1->Size = System::Drawing::Size(757, 308);

this->dataGridView1->TabIndex = 0;

this->dataGridView1->RowsAdded += gcnew System::Windows::Forms::DataGridViewRowsAddedEventHandler(this, &Form1::dataGridView1_RowsAdded);

//

// Column1

//

this->Column1->HeaderText = L"Адресквартиры";

this->Column1->Name = L"Column1";

this->Column1->Width = 305;

//

// Column4

//

this->Column4->HeaderText = L"Площадь";

this->Column4->Name = L"Column4";

this->Column4->Width = 75;

//

// Column9

//

this->Column9->HeaderText = L"Кол-вокомнат";

this->Column9->Name = L"Column9";

this->Column9->Width = 130;

//

// Column5

//

this->Column5->HeaderText = L"Этаж";

this->Column5->Name = L"Column5";

this->Column5->Width = 50;

//

// Column6

//

this->Column6->HeaderText = L"Телефон";

this->Column6->Name = L"Column6";

this->Column6->Width = 75;

//

// Column7

//

this->Column7->HeaderText = L"Ремонт";

this->Column7->Name = L"Column7";

this->Column7->Width = 65;

//

// Column8

//

this->Column8->HeaderText = L"Пустая";

this->Column8->Name = L"Column8";

this->Column8->Width = 60;

//

// Column10

//

this->Column10->HeaderText = L"Цена";

this->Column10->Name = L"Column10";

//

// dataGridView2

//

this->dataGridView2->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;

this->dataGridView2->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(9) {this->dataGridViewTextBoxColumn1,

this->Column2, this->dataGridViewTextBoxColumn6, this->dataGridViewTextBoxColumn7, this->dataGridViewTextBoxColumn8, this->dataGridViewTextBoxColumn9,

this->dataGridViewCheckBoxColumn1, this->Column3, this->dataGridViewTextBoxColumn10});

this->dataGridView2->Location = System::Drawing::Point(1, 0);

this->dataGridView2->Name = L"dataGridView2";

this->dataGridView2->RowTemplate->Height = 24;

this->dataGridView2->Size = System::Drawing::Size(756, 308);

this->dataGridView2->TabIndex = 1;

this->dataGridView2->RowsAdded += gcnew System::Windows::Forms::DataGridViewRowsAddedEventHandler(this, &Form1::dataGridView2_RowsAdded);

//

// dataGridViewTextBoxColumn1

//

this->dataGridViewTextBoxColumn1->HeaderText = L"Адрес";

this->dataGridViewTextBoxColumn1->Name = L"dataGridViewTextBoxColumn1";

this->dataGridViewTextBoxColumn1->Width = 305;

//

// Column2

//

this->Column2->HeaderText = L"Площадь";

this->Column2->Name = L"Column2";

this->Column2->Width = 75;

//

// dataGridViewTextBoxColumn6

//

this->dataGridViewTextBoxColumn6->HeaderText = L"Кол-воэтажей";

this->dataGridViewTextBoxColumn6->Name = L"dataGridViewTextBoxColumn6";

this->dataGridViewTextBoxColumn6->Width = 130;

//

// dataGridViewTextBoxColumn7

//

this->dataGridViewTextBoxColumn7->HeaderText = L"Кол-воквартир";

this->dataGridViewTextBoxColumn7->Name = L"dataGridViewTextBoxColumn7";

this->dataGridViewTextBoxColumn7->Width = 140;

//

// dataGridViewTextBoxColumn8

//

this->dataGridViewTextBoxColumn8->HeaderText = L"Кол-вокомнат";

this->dataGridViewTextBoxColumn8->Name = L"dataGridViewTextBoxColumn8";

this->dataGridViewTextBoxColumn8->Width = 130;

//

// dataGridViewTextBoxColumn9

//

this->dataGridViewTextBoxColumn9->HeaderText = L"Отопление";

this->dataGridViewTextBoxColumn9->Name = L"dataGridViewTextBoxColumn9";

//

// dataGridViewCheckBoxColumn1

//

this->dataGridViewCheckBoxColumn1->HeaderText = L"Канализация";

this->dataGridViewCheckBoxColumn1->Name = L"dataGridViewCheckBoxColumn1";

//

// Column3

//

this->Column3->HeaderText = L"Телефон";

this->Column3->Name = L"Column3";

this->Column3->Resizable = System::Windows::Forms::DataGridViewTriState::True;

this->Column3->SortMode = System::Windows::Forms::DataGridViewColumnSortMode::Automatic;

this->Column3->Width = 75;

//

// dataGridViewTextBoxColumn10

//

this->dataGridViewTextBoxColumn10->HeaderText = L"Цена";

this->dataGridViewTextBoxColumn10->Name = L"dataGridViewTextBoxColumn10";

//

// tabControl1

//

this->tabControl1->Controls->Add(this->flatsPage);

this->tabControl1->Controls->Add(this->housePage);

this->tabControl1->Controls->Add(this->commPage);

this->tabControl1->Location = System::Drawing::Point(12, 31);

this->tabControl1->Name = L"tabControl1";

this->tabControl1->SelectedIndex = 0;

this->tabControl1->Size = System::Drawing::Size(765, 337);

this->tabControl1->TabIndex = 4;

//

// flatsPage

//

this->flatsPage->AutoScroll = true;

this->flatsPage->Controls->Add(this->dataGridView1);

this->flatsPage->Location = System::Drawing::Point(4, 25);

this->flatsPage->Name = L"flatsPage";

this->flatsPage->Padding = System::Windows::Forms::Padding(3);

this->flatsPage->Size = System::Drawing::Size(757, 308);

this->flatsPage->TabIndex = 0;

this->flatsPage->Text = L"Квартиры";

this->flatsPage->UseVisualStyleBackColor = true;

//

// housePage

//

this->housePage->AutoScroll = true;

this->housePage->Controls->Add(this->dataGridView2);

this->housePage->Location = System::Drawing::Point(4, 25);

this->housePage->Name = L"housePage";

this->housePage->Padding = System::Windows::Forms::Padding(3);

this->housePage->Size = System::Drawing::Size(757, 308);

this->housePage->TabIndex = 1;

this->housePage->Text = L"Частныедома";

this->housePage->UseVisualStyleBackColor = true;

//

// commPage

//

this->commPage->AutoScroll = true;

this->commPage->Controls->Add(this->dataGridView3);

this->commPage->Location = System::Drawing::Point(4, 25);

this->commPage->Name = L"commPage";

this->commPage->Size = System::Drawing::Size(757, 308);

this->commPage->TabIndex = 2;

this->commPage->Text = L"Комерческиездания";

this->commPage->UseVisualStyleBackColor = true;

//

// dataGridView3

//

this->dataGridView3->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;

this->dataGridView3->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(4) {this->dataGridViewTextBoxColumn2,

this->dataGridViewTextBoxColumn3, this->dataGridViewTextBoxColumn4, this->dataGridViewTextBoxColumn5});

this->dataGridView3->Location = System::Drawing::Point(0, 0);

this->dataGridView3->Name = L"dataGridView3";

this->dataGridView3->RowTemplate->Height = 24;

this->dataGridView3->Size = System::Drawing::Size(757, 308);

this->dataGridView3->TabIndex = 2;

//

// dataGridViewTextBoxColumn2

//

this->dataGridViewTextBoxColumn2->HeaderText = L"Адресздания";

this->dataGridViewTextBoxColumn2->Name = L"dataGridViewTextBoxColumn2";

this->dataGridViewTextBoxColumn2->Width = 400;

//

// dataGridViewTextBoxColumn3

//

this->dataGridViewTextBoxColumn3->HeaderText = L"Кол-воэтажей";

this->dataGridViewTextBoxColumn3->Name = L"dataGridViewTextBoxColumn3";

this->dataGridViewTextBoxColumn3->Width = 130;

//

// dataGridViewTextBoxColumn4

//

this->dataGridViewTextBoxColumn4->HeaderText = L"Площадь";

this->dataGridViewTextBoxColumn4->Name = L"dataGridViewTextBoxColumn4";

//

// dataGridViewTextBoxColumn5

//

this->dataGridViewTextBoxColumn5->HeaderText = L"Цена";

this->dataGridViewTextBoxColumn5->Name = L"dataGridViewTextBoxColumn5";

//

// listBox1

//

this->listBox1->FormattingEnabled = true;

this->listBox1->ItemHeight = 16;

this->listBox1->Location = System::Drawing::Point(12, 374);

this->listBox1->Name = L"listBox1";

this->listBox1->Size = System::Drawing::Size(267, 84);

this->listBox1->TabIndex = 5;

this->listBox1->SelectedIndexChanged += gcnew System::EventHandler(this, &Form1::listBox1_SelectedIndexChanged);

//

// bEdit2

//

this->bEdit2->Location = System::Drawing::Point(558, 374);

this->bEdit2->Name = L"bEdit2";

this->bEdit2->Size = System::Drawing::Size(219, 27);

this->bEdit2->TabIndex = 6;

this->bEdit2->Text = L"Изменитьклиента";

this->bEdit2->UseVisualStyleBackColor = true;

this->bEdit2->Click += gcnew System::EventHandler(this, &Form1::bEdit2_Click);

//

// textBox1

//

this->textBox1->Location = System::Drawing::Point(285, 376);

this->textBox1->Name = L"textBox1";

this->textBox1->ReadOnly = true;

this->textBox1->Size = System::Drawing::Size(267, 22);

this->textBox1->TabIndex = 7;

//

// textBox2

//

this->textBox2->Location = System::Drawing::Point(285, 404);

this->textBox2->Name = L"textBox2";

this->textBox2->ReadOnly = true;

this->textBox2->Size = System::Drawing::Size(267, 22);

this->textBox2->TabIndex = 8;

//

// textBox3

//

this->textBox3->Location = System::Drawing::Point(285, 432);

this->textBox3->Name = L"textBox3";

this->textBox3->ReadOnly = true;

this->textBox3->Size = System::Drawing::Size(267, 22);

this->textBox3->TabIndex = 9;

//

// menuStrip1

//

this->menuStrip1->Items->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(2) {this->fileToolStripMenuItem,

this->edToolStripMenuItem});

this->menuStrip1->Location = System::Drawing::Point(0, 0);

this->menuStrip1->Name = L"menuStrip1";

this->menuStrip1->Size = System::Drawing::Size(789, 28);

this->menuStrip1->TabIndex = 10;

this->menuStrip1->Text = L"menuStrip1";

//

// fileToolStripMenuItem

//

this->fileToolStripMenuItem->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(2) {this->saveToolStripMenuItem,

this->exitToolStripMenuItem});

this->fileToolStripMenuItem->Name = L"fileToolStripMenuItem";

this->fileToolStripMenuItem->Size = System::Drawing::Size(57, 24);

this->fileToolStripMenuItem->Text = L"Файл";

//

// saveToolStripMenuItem

//

this->saveToolStripMenuItem->Name = L"saveToolStripMenuItem";

this->saveToolStripMenuItem->ShortcutKeys = static_cast<System::Windows::Forms::Keys>((System::Windows::Forms::Keys::Control | System::Windows::Forms::Keys::S));

this->saveToolStripMenuItem->Size = System::Drawing::Size(237, 24);

this->saveToolStripMenuItem->Text = L"Сохранитьбазу";

this->saveToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::saveToolStripMenuItem_Click);

//

// exitToolStripMenuItem

//

this->exitToolStripMenuItem->Name = L"exitToolStripMenuItem";

this->exitToolStripMenuItem->ShortcutKeys = static_cast<System::Windows::Forms::Keys>((System::Windows::Forms::Keys::Alt | System::Windows::Forms::Keys::F4));

this->exitToolStripMenuItem->Size = System::Drawing::Size(237, 24);

this->exitToolStripMenuItem->Text = L"Выход";

this->exitToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::exitToolStripMenuItem_Click);

//

// edToolStripMenuItem

//

this->edToolStripMenuItem->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(1) {this->editToolStripMenuItem});

this->edToolStripMenuItem->Name = L"edToolStripMenuItem";

this->edToolStripMenuItem->Size = System::Drawing::Size(72, 24);

this->edToolStripMenuItem->Text = L"Правка";

//

// editToolStripMenuItem

//

this->editToolStripMenuItem->Name = L"editToolStripMenuItem";

this->editToolStripMenuItem->ShortcutKeys = static_cast<System::Windows::Forms::Keys>((System::Windows::Forms::Keys::Control | System::Windows::Forms::Keys::E));

this->editToolStripMenuItem->Size = System::Drawing::Size(230, 24);

this->editToolStripMenuItem->Text = L"Редактировать";

this->editToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::editToolStripMenuItem_Click);

//

// bAdd1

//

this->bAdd1->Location = System::Drawing::Point(558, 404);

this->bAdd1->Name = L"bAdd1";

this->bAdd1->Size = System::Drawing::Size(219, 23);

this->bAdd1->TabIndex = 11;

this->bAdd1->Text = L"Добавитьклиента";

this->bAdd1->UseVisualStyleBackColor = true;

this->bAdd1->Click += gcnew System::EventHandler(this, &Form1::bAdd1_Click);

//

// bDel1

//

this->bDel1->Location = System::Drawing::Point(558, 432);

this->bDel1->Name = L"bDel1";

this->bDel1->Size = System::Drawing::Size(219, 23);

this->bDel1->TabIndex = 12;

this->bDel1->Text = L"Удалитьклиента";

this->bDel1->UseVisualStyleBackColor = true;

this->bDel1->Click += gcnew System::EventHandler(this, &Form1::bDel1_Click);

//

// Form1

//

this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);

this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;

this->ClientSize = System::Drawing::Size(789, 468);

this->Controls->Add(this->bDel1);

this->Controls->Add(this->bAdd1);

this->Controls->Add(this->textBox3);

this->Controls->Add(this->textBox2);

this->Controls->Add(this->textBox1);

this->Controls->Add(this->bEdit2);

this->Controls->Add(this->listBox1);

this->Controls->Add(this->tabControl1);

this->Controls->Add(this->menuStrip1);

this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedSingle;

this->MainMenuStrip = this->menuStrip1;

this->Name = L"Form1";

this->Text = L"Недвижимость";

this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);

this->FormClosed += gcnew System::Windows::Forms::FormClosedEventHandler(this, &Form1::Form1_FormClosed);

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView1))->EndInit();

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView2))->EndInit();

this->tabControl1->ResumeLayout(false);

this->flatsPage->ResumeLayout(false);

this->housePage->ResumeLayout(false);

this->commPage->ResumeLayout(false);

(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->dataGridView3))->EndInit();

this->menuStrip1->ResumeLayout(false);

this->menuStrip1->PerformLayout();

this->ResumeLayout(false);

this->PerformLayout();

}

#pragmaendregion

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

beg = new ContH; // Производим инициализацию списка клиентов

end = beg;

Flat F;// Загрузка Flat изфайла

int i = 0;

F.init();// привязкакфайлу

while(F.ReadFromF(i))

{

dataGridView1->Rows->Add();//добавление строки в дгв

F.view(i++,dataGridView1);//заполнение строки элементами

}

dataGridView1->ReadOnly = true;

F.uninit();

House H; // Загрузка House изфайла

i = 0;

H.init();

while(H.ReadFromF(i))

{

dataGridView2->Rows->Add();

H.view(i++,dataGridView2);

}

dataGridView2->ReadOnly = true;

H.uninit();

Commercial C;// Загрузка Commercial изфайла

i = 0;

C.init();

while(C.ReadFromF(i))

{

dataGridView3->Rows->Add();

C.view(i++,dataGridView3);

}

dataGridView3->ReadOnly = true;

C.uninit();

Human *hm; //Загрузка клиентов из файла в список

hm = new Human;

i=0;

hm->init();

while(hm->ReadFromF(i++))

{

end = end->Add(hm);

listBox1->Items->Add(hm->OutFIO()); // Отображение загруженного клиента в listBox1

hm->uninit();

hm = new Human;

hm->init();

}

hm->uninit();

}

private: System::Void dataGridView1_RowsAdded(System::Object^ sender, System::Windows::Forms::DataGridViewRowsAddedEventArgs^ e) {

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[4]->Value = false;

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[5]->Value = false;

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[6]->Value = false;

}

private: System::Void dataGridView2_RowsAdded(System::Object^ sender, System::Windows::Forms::DataGridViewRowsAddedEventArgs^ e) {

dataGridView2->Rows[dataGridView2->RowCount-1]->Cells[6]->Value = false;

dataGridView2->Rows[dataGridView2->RowCount-1]->Cells[7]->Value = false;

}

private: System::Void Form1_FormClosed(System::Object^ sender, System::Windows::Forms::FormClosedEventArgs^ e) {

while(beg!=end) // При закрытии формы происходит очистка динамически выделенной памяти

{

end = end->Del();

}

delete beg;

}

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

if(textBox1->ReadOnly)

{

if(listBox1->SelectedIndex == -1) // Еслиэлемент listBox1 невыбранвыводимсообщениеобошибке

{

MessageBox^ mb;

mb->Show(gcnew String("Выберитеклиента!"),

gcnew String("Ошибка"),

MessageBoxButtons::OK,

MessageBoxIcon::Error,

MessageBoxDefaultButton::Button1,

MessageBoxOptions::DefaultDesktopOnly,

false);

return; // Возвращаем управление форме

}

textBox1->ReadOnly = false; // Снимаем с textBox-ов атрибут "только для чтения"

textBox2->ReadOnly = false;

textBox3->ReadOnly = false;

bEdit2->Text = "Применить";

}

else

{

textBox1->ReadOnly = true; // Устанавливаематрибут "толькодлячтения" на textBox-ы

textBox2->ReadOnly = true;

textBox3->ReadOnly = true;

bEdit2->Text = "Изменить клиента";

// Меняем данные о клиенте

beg->Item(listBox1->SelectedIndex,beg)->Value()->Input(textBox1->Text,textBox2->Text,textBox3->Text);

// Если ФИО было изменено, изменяем её и в listBox1

listBox1->Items[listBox1->SelectedIndex] = beg->Item(listBox1->SelectedIndex,beg)->Value()->OutFIO();

}

}

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

if(listBox1->SelectedIndex!=-1) // При выборе элемента listBox проиходит отображение клиента в textBox-ах

{

textBox1->Text = beg->Item(listBox1->SelectedIndex,beg)->Value()->OutFIO();

textBox2->Text = beg->Item(listBox1->SelectedIndex,beg)->Value()->OutTel();

textBox3->Text = beg->Item(listBox1->SelectedIndex,beg)->Value()->OutAddr();

}

}

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

if(dataGridView1->ReadOnly) // Устанавливаем и снимаем атрибут "только для чтения"

{ // длятаблицсданными

dataGridView1->ReadOnly = false;

dataGridView2->ReadOnly = false;

dataGridView3->ReadOnly = false;

editToolStripMenuItem->Text = "Снятьредактирование";

}

else

{

dataGridView1->ReadOnly = true;

dataGridView2->ReadOnly = true;

dataGridView3->ReadOnly = true;

editToolStripMenuItem->Text = "Редактировать";

}

}

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

Form1::Close();

}

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

Flat F; // Запись в файл Flat

F.init('w');

int i = 0;

for(;i<dataGridView1->RowCount-1;i++)

{

F.input(i,dataGridView1);

F.SaveToF();

}

F.uninit();

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.