Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Лабораторная работа №3. Создаём приложение в среде Borland Delphi 7, иллюстрирующее работу многопоточных приложений



Создаём приложение в среде Borland Delphi 7, иллюстрирующее работу многопоточных приложений.

Задание к лабораторной №3: В созданном в задании 1 приложении добавить формирование отчетов в Exel Формирование и вывод отчета организовать в отдельном потоке.

Результаты работы: в имеющееся приложение были добавлены код вывода таблицы в Exel отдельным потоком и кнопка (Рисунок 7).

Рисунок 7 – Многопоточное приложение
   

Вначале был создан поток следующим образом:

tr:=beginthread(nil,0,addr(TForm1.axe),nil,0,id);

После этого в этот поток был внесён код для вывода таблицы в Exel c помощью следующего кода:

procedure TForm1.axe;

var

i,j,s:integer;

XL,xlb:variant;

begin

CoInitialize(nil);

XL:=CreateOleObject('Excel.Application');

XL.DisplayAlerts:= false;

xlb:=xl.workbooks.add;

xl.visible:=false;

table1.First;

for j:=1 to table1.FieldCount do

xlb.WorkSheets[1].Columns[j].ColumnWidth:= 17;

for i:=0 to table1.FieldCount-1 do

xlb.WorkSheets[1].Cells[1,i+1]:=table1.fields[i].fieldname;

s:=2;

for i:=0 to table1.RecordCount-1 do

begin

for j:=0 to table1.FieldCount-1 do

xlb.WorkSheets[1].Cells[s,j+1]:=table1.Fields[j].AsString;

inc(s);

table1.Next;

end;

xl.visible:=true;

CoUninitialize;

CloseHandle(tr);

end;

end;






Дата публикования: 2015-03-29; Прочитано: 190 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...