Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

BFI_DOPMAT / Вывод таблицы средствами MS Word

.pdf
Скачиваний:
1
Добавлен:
01.04.2022
Размер:
103.95 Кб
Скачать

//Программа вывода таблицы средствами MS Word: запускается

//программа, пользователь наблюдает, как запускается редактор

//MS Word и автоматически происходит построение таблицы

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

{

//В меню Project укажем команду Add Reference и на

//появившейся вкладке COM дважды щелкнем по ссылке на

//библиотеку Microsoft Word 12.0 Object Library

button1->Text = "Пуск"; this->Text = "Поcтроение таблицы";

}

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

{ // Инициализируем два строковых массива:

array<String^> ^ Imena = {"Андрей - раб", "Света-X", "ЖЭК", "Справка по тел", "Александр Степанович",

"Мама - дом", "Карапузова Таня", "Погода сегодня", "Театр Браво"};

array<String^> ^ Tel = {"274-88-17", "+38(067)7030356", "22-345-72", "009", "223-67-67 доп 32-67",

"570-38-76", "201-72-23-прямой моб", "001", "216-40-22"};

// Создаем новый экземпляр класса Word::_Application: auto Ворд1 =

gcnew Microsoft::Office::Interop::Word::Application(); Ворд1->Visible = true;

//Перменная с "пустым" значением: auto t = Type::Missing;

//Открываем новый документ MS Word:

auto Документ = Ворд1->Documents->Add(t, t, t, t);

//Вводим текст в документ MS WORD с текущей позиции:

Ворд1->Selection->TypeText("ТАБЛИЦА ТЕЛЕФОНОВ");

//Параметр, указывающий, показывать ли границы ячеек: System::Object ^ t1 = Microsoft::Office::Interop::

Word::WdDefaultTableBehavior::wdWord9TableBehavior;

//Параметр, указывающий будет ли приложение Word автоматически

//изменять размер ячеек в таблице для подгонки содержимого: System::Object ^ t2 = Microsoft::Office::Interop::

Word::WdAutoFitBehavior::wdAutoFitContent; // Создаем таблицу из 9 строк и 2 столбцов:

Ворд1->ActiveDocument->Tables->Add(Ворд1->Selection->Range, 9, 2, t1, t2);

// Заполнять ячейки таблицы можно так: for (int i = 1; i <= 9; i++)

{

Ворд1->ActiveDocument->Tables[1]->Cell(i, 1)-> default->InsertAfter(Imena[i - 1]);

Ворд1->ActiveDocument->Tables[1]->Cell(i, 2)-> default->InsertAfter(Tel[i - 1]);

//Программируя на C#, мы написали бы:

//Ворд1.ActiveDocument.Tables[1].Cell(i, 2).

//

Range.InsertAfter(Tel[i - 1]);

}

 

//Назначаем единицы измерения в документе приложения MS Word: Object ^ t3 = Microsoft::Office::Interop::Word::WdUnits::wdLine;

//Параметр, указывающий на девятую строку в документе MS Word: Object ^ строка9 = 9;

//Перевести текущую позицию (Selection) за пределы таблицы,

//(в девятую строку), чтобы здесь вывести какой-либо текст:

Ворд1->Selection->MoveDown(t3, строка9, t); // И здесь печатаем следующий текст:

Ворд1->Selection->TypeText("Какой-либо текст после таблицы");

//Сохранять документ нет смысла, но это решит пользователь:

//Object ^ ИмяФайла = "C:\\a.doc";

//Ворд1->ActiveDocument->SaveAs(ИмяФайла, t, t, t, t, t,

//

t, t, t, t, t, t, t, t, t, t);

} };

 

}

 

Соседние файлы в папке BFI_DOPMAT