Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
С++_навч_пос14_new.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.86 Mб
Скачать

9 Створення активної форми (Active Form)

Постановка задачі: створити і використати активну форму ActiveX.

Послідовність виконання:

1 Закрити все: File/Close All

2 Добавити нову форму Active Form : File/New/Other.../Active Form

3 Помістити на форму три компоненти TEdit і один TButton

4 Запрограмуйте функцію оброки події OnClick для Button1:

void __fastcall TActiveFormX::Button1Click(TObject *Sender)

{

float a,b;

a=StrToFloat(Edit1->Text);

b=StrToFloat(Edit2->Text);

Edit3->Text=a+b;

}

5 Зберегти проект: File/Save Project As...

6 Зареєструвати ActiveX сервер: Run/Register ActiveX Server

Використання створеної форми ActiveFormX

Послідовність виконання:

1 Відкрити MS Excel

2 Вибрати Сервис/Макрос/Редактор Visual Basic

3 Вставити нову форму: Insert/User Form

4 Добавити додатковий компонент ActiveFormX: Tools/Additional Controls, вибрати ActiveFormX Control

5 Добавте компонент ActiveFormX на форму

6 Виконати програму: Run/Run (див.рис.)

10 Робота з компонентами-серверами com ms Word і ms Excel

Постановка задачі: створити додаток, який використовує компоненти-сервери COM MS Word і MS Excel.

Послідовність виконання:

1 Створюємо додаток: File/New/Application

2 Добавте на форму компоненти TWordApplication, TExcelApplication, TExcelWorksheet.

3 Створіть функцію-обробник події OnCreate форми Form1:

void __fastcall TForm1::FormCreate(TObject *Sender)

{

WordApplication1->Connect();//з’єднатись з сервером

WordApplication1->set_Visible(true);//зробити видимим

TVariant Visible=true;

WordApplication1->Documents->Add(EmptyParam,EmptyParam,EmptyParam,Visible);

//добавити документ

WordApplication1->Selection->InsertAfter(TVariant("Hello!\n"));

//вставити "Hello!"

TVariant FileName="hello.doc";

//зберегти документ

WordApplication1->ActiveDocument->SaveAs(&FileName);

WordApplication1->Disconnect();//роз’єднатись з сервером

ExcelApplication1->Connect();//з’єднатись з сервером

//добавити робочу книгу

ExcelApplication1->Workbooks->Add(EmptyParam,0);

//в активну комірку записати число 1

ExcelApplication1->ActiveCell->set_Value(TVariant(1));

//в комірку A2 записати число 2

ExcelApplication1->get_Range(TVariant("A2"),EmptyParam)->set_Value(TVariant(2));

//з’єднатись з сервером

ExcelWorksheet1->ConnectTo(ExcelApplication1->ActiveSheet);

//створити вказівник на комірку A3

Excel_2k::RangePtr r=ExcelWorksheet1->get_Range(TVariant("A3"),EmptyParam);

//в комірку A3 записати число 3

r->set_Value(TVariant(3));

//вказівник вказує на комірку (4,1) (або "A4")

r=ExcelWorksheet1->Cells->get__Default(TVariant(4),TVariant(1));

//в комірку (4,1) записати число 4

r->set_Value(TVariant(4));

TVariant FileName2="hello.xls";

//зберегти робочу книгу

ExcelApplication1->ActiveWorkbook->SaveAs(FileName2,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,0,EmptyParam,EmptyParam,EmptyParam,EmptyParam,0);

ExcelWorksheet1->Disconnect();//роз’єднатись з сервером

ExcelApplication1->Disconnect();//роз’єднатись з сервером

}

4 Збережіть усе: File/Save All

5 Виконайте програму: Run.

11 Створення компонентів corba

Постановка задачі: створити компонент-сервер CORBA з методом, який повертає квадрат числа, створити клієнт CORBA, який використовує об’єкт CORBA.

Послідовність виконання: