Topic: печать
можно-ли распечатать таблицу не пребигая к мастеру отчетов?
My Visual Database → Russian → печать
можно-ли распечатать таблицу не пребигая к мастеру отчетов?
У компонента TableGrid можно вызвать метод ExportToExcel, который в свою очередь возвращает ссылку на OLE объект, т.о. можно распечатать через Excel вызвав метод PrintOut
procedure Form1_Button2_OnClick (Sender: TObject; var Cancel: boolean);
var
ExcelApp, Sheet: Variant;
begin
ExcelApp := Form1.TableGrid2.ExportToExcel;
ExcelApp.Visible := False;
// необязательные настройки
ExcelApp.Worksheets[1].PageSetup.LeftFooter := 'Левый нижний колонтитул';
ExcelApp.Worksheets[1].PageSetup.LeftHeader := 'Левый верхний колонтитул';
ExcelApp.Worksheets[1].PageSetup.CenterFooter := 'Центральный нижний колонтитул';
ExcelApp.Worksheets[1].PageSetup.CenterHeader := 'Центральный верхний колонтитул';
ExcelApp.Worksheets[1].PageSetup.RightFooter := 'Правый нижний колонтитул';
ExcelApp.Worksheets[1].PageSetup.RightHeader := 'Правый верхний колонтитул';
ExcelApp.Worksheets[1].PageSetup.Draft := True; // Для черновой печати
ExcelApp.Worksheets[1].PageSetup.BlackAndWhite := True; // Для чёрно-белой печати
ExcelApp.Worksheets[1].PageSetup.PrintGridlines := True; // При печати будет видна сетка
ExcelApp.Worksheets[1].PageSetup.PrintHeadings := True; // При печати будут печататься названия столбцов и номера строк
ExcelApp.Worksheets[1].PageSetup.FirstPageNumber := 5; // Начать нумерацию страниц с пятой
ExcelApp.Worksheets[1].PageSetup.Orientation := 1; // Ориентация бумаги: 1=Книжная, 2=Альбомная
ExcelApp.Worksheets[1].PageSetup.PaperSize := 9; // Указать размер бумаги. 8=А3, 9=А4, 11=А5
ExcelApp.Worksheets[1].PrintOut;
ExcelApp.DisplayAlerts := False;
ExcelApp.Quit;
end;
только есть одна странность, процесс Excel будет висеть в памяти до тех пор, пока ваша программа не будет закрыта.
My Visual Database → Russian → печать
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi