Тема: Печать Panel
Показать сообщение отдельно
  #10  
Старый 19.10.2012, 15:47
Heneken Heneken вне форума
Новичок
 
Регистрация: 11.09.2011
Сообщения: 73
Версия Delphi: Delphi XE6
Репутация: 10
По умолчанию Добавил всякий случай=)

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  tmpform: TForm;
  SavedRect, NewRect: TRect;
begin
  if printeres.Execute then
  begin
    SavedRect := Panel1.BoundsRect;
    NewRect := SavedRect;
    OffsetRect(NewRect, -NewRect.Left, -NewRect.Top);
 
    tmpform := TForm.Create(nil);
    try
      tmpform.BorderStyle := bsNone;
      tmpform.BoundsRect := NewRect;
      Panel1.Parent := tmpform;
      Panel1.BoundsRect := NewRect;
      tmpform.Visible := True;
      tmpform.Print;
      Panel1.Parent := Self;
      Panel1.BoundsRect := SavedRect;
    finally
      SetCurrentDir(ExtractFilePath(Application.ExeName));///На всякий случай
      tmpform.Free;
    end;
  end;
end;
Ответить с цитированием