Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

FastReport   Найти похожие ветки 

 
Nemra   (2004-04-20 15:01) [0]

Всем привет.
Может кто знает?
Как програмно сменить принтер в FastReport-е.


 
ssk ©   (2004-04-20 15:28) [1]

можно попробовать применить такой фокус: сначала сменить принтер по умочанию, а затем вызывать ФастРепорт


 
Nemra   (2004-04-20 16:12) [2]

Нет, это не хорошо, другая программа тоже может работать и в момент смены принтера по умолчании, напечатать на другой принтер


 
Reindeer Moss Eater ©   (2004-04-20 16:26) [3]

Есть метод SetPrinterTo(PrnName:string), правда приватный.
Но исходники же под рукой.


 
Nemra   (2004-04-20 18:34) [4]

Спасибо всем я нашел решение.

function PrepearePrinter(AfrReport:TfrReport; FPrinterName:string):boolean;
VAR P1,P2:integer;
begin
 p1 := GetPrinterIndex(GetDefaultPrinter);
 p2 := GetPrinterIndex(FPrinterName);
 if (p1 < 0) or (p2 < 0) then
   result := false
 else begin
   if (p1 <> p2) then
     AfrReport.ChangePrinter(GetPrinterIndex(GetDefaultPrinter),GetPrinterIndex(FPrinterName));
   result := true;
 end;
end;

function GetPrinterIndex(PrinterName: string):integer;
var
 I: Integer;
 aPrinter: TPrinter;
begin
 Result := -1;
   for I := 0 to Printer.Printers.Count - 1 do
     if Printer.Printers[i] = PrinterName then
       Result := i;
end;

function GetDefaultPrinter: string;
var ResStr: array[0..255] of Char;
   s:string;
begin
 GetProfileString("Windows", "device", "", ResStr, 255);
 s:= StrPas(ResStr);
 Delete(s, pos(",",s), length(s));
 Result := s;
end;



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
3-1079423613
Лысый
2004-03-16 10:53
2004.04.11
SQL


14-1081959606
TButton
2004-04-14 20:20
2004.04.11
Мииилая мояяяя...


1-1080037645
Pa5ha
2004-03-23 13:27
2004.04.11
поиск строки в строке


1-1082388392
Тимохов
2004-04-19 19:26
2004.04.11
Thread.Terminated II.


14-1082365331
АлексейК
2004-04-19 13:02
2004.04.11
Вот и верь теперь своим глазам.