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] и гости: 1