Pages (String) – содержат список страниц, которые будут напечатаны (синтаксис как определено в диалоге печати).
Модератор: Модераторы
Pages (String) – содержат список страниц, которые будут напечатаны (синтаксис как определено в диалоге печати).
PrintPar1 := VarArrayCreate([0, 2], varVariant);
PrintPar1[0]:= MakePropertyValue('"Copies"','1');
PrintPar1[1]:= MakePropertyValue('"RangeText"','"2"');
PrintPar1[2]:= MakePropertyValue('"Collate"','true');
Frame:= Document.getCurrentController.getFrame;
Dispatcher:= Server.createInstance('com.sun.star.frame.DispatchHelper');
Dispatcher.executeDispatch(Frame,'.uno:Print', '', 0, PrintPar1);
PrintPar1 := VarArrayCreate([0, 0], varVariant);
PrintPar1[0]:= MakePropertyValue('RangeText','2');
Frame:= Document.getCurrentController.getFrame;
Dispatcher:= Server.createInstance('com.sun.star.frame.DispatchHelper');
Dispatcher.executeDispatch(Frame,'.uno:Print', '', 0, PrintPar1);
sant писал(а):Если же написать так, тоже не работает. Единственное вызавается диалог печати, но в него параметры не передаются!
- Код: Выделить всё
PrintPar1 := VarArrayCreate([0, 0], varVariant);
PrintPar1[0]:= MakePropertyValue('RangeText','2');
Frame:= Document.getCurrentController.getFrame;
Dispatcher:= Server.createInstance('com.sun.star.frame.DispatchHelper');
Dispatcher.executeDispatch(Frame,'.uno:Print', '', 0, PrintPar1);
Dispatcher.executeDispatch(Frame,'.uno:PrintDefault', '', 0, PrintPar1);
Dispatcher.executeDispatch(Frame,'.uno:PrintDefault', '', 0, PrintPar1);
PrintPar[1]:=MakePropertyValue('CopyCount', 1);
function MakePropertyValue(PropertyName, PropertyValue: variant):variant;
var
Structure: variant;
begin
Structure:= Server.Bridge_GetStruct('com.sun.star.beans.PropertyValue');
Structure.Name:= PropertyName;
Structure.Value:= PropertyValue;
Result:= Structure;
end;
Frame:= Document.getCurrentController.getFrame;
Dispatcher:= Server.createInstance('com.sun.star.frame.DispatchHelper');
PrintPar1 := VarArrayCreate([0, 0], varVariant);
PrintPar1[0]:= MakePropertyValue('RangeTex', 2);
Dispatcher.executeDispatch(Frame, '.uno:Print', '', 0, PrintPar1);
PrintPar := VarArrayCreate([0, 0], varVariant);
PrintPar[0]:= MakePropertyValue('CopyCount', 1);
Document.Print(PrintPar);
PrintPar[0]:=MakePropertyValue('CopyCount', 1);
PrintPar[1]:=MakePropertyValue('Pages', '1-3,10-15,25'); // страницы разделяются "," или ";" точно не помню проверьте сами
function MakePropertyValue(PropertyName, PropertyValue: variant):variant;
PrintPar := VarArrayCreate([0, 1], varVariant);
PrintPar[0]:= MakePropertyValue('Pages', '2,3,4');
PrintPar[1]:= MakePropertyValue('CopyCount',i);
Document.Print(PrintPar);
Сейчас этот форум просматривают: Google [Bot] и гости: 37