亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? prvieweh.pas

?? 一個(gè)功能強(qiáng)大的DBGRID控件
?? PAS
?? 第 1 頁 / 共 3 頁
字號(hào):
end;

procedure TPrinterPreview.Abort;
begin
  FAborted := True;
end;

procedure TPrinterPreview.BeginDoc;
var i: Integer;
  FontSize: Integer;
begin
  for i := 0 to FMetafileList.Count - 1 do TMetaFile(FMetafileList[i]).Free;
  FMetafileList.Clear;

  FMetafileList.Add(TMetaFile.Create());
  if Printer.Printers.Count > 0
    then FMetafileCanvas := TMetafileCanvas.Create(
      TMetafile(FMetafileList[FMetafileList.Count - 1]), Printer.Handle {0})
  else FMetafileCanvas := TMetafileCanvas.Create(
      TMetafile(FMetafileList[FMetafileList.Count - 1]), 0);
  FontSize := FMetafileCanvas.Font.Size;

  if Printer.Printers.Count > 0 then
  begin
    FMetafileCanvas.Font.PixelsPerInch := GetDeviceCaps(Printer.Handle, LOGPIXELSX);
    if FMetafileCanvas.Font.PixelsPerInch > GetDeviceCaps(Printer.Handle, LOGPIXELSY) then
      FMetafileCanvas.Font.PixelsPerInch := GetDeviceCaps(Printer.Handle, LOGPIXELSY);
  end
  else
    FMetafileCanvas.Font.PixelsPerInch := DefaultPrinterPixelsPerInchX;

  FMetafileCanvas.Font.Size := FontSize;
  FPageNumber := 1;
  FAborted := False;
  FPrinting := True;
  Previewer.FPageCount := 1;
  Previewer.FPageIndex := 1;
  if Assigned(Previewer.OnPrinterPreviewChanged)
    then Previewer.OnPrinterPreviewChanged(Self);
end;

procedure TPrinterPreview.NewPage;
var FontSize: Integer;
begin
  FMetafileList.Add(TMetaFile.Create());
  FMetafileCanvas.Free;
  if FMetafileList.Count = 2 then
    Previewer.UpdatePageSetup; //UpdatePreview;
  if Printer.Printers.Count > 0 then
    FMetafileCanvas := TMetafileCanvas.Create(
      TMetafile(FMetafileList[FMetafileList.Count - 1]), Printer.Handle {0})
  else
    FMetafileCanvas := TMetafileCanvas.Create(
      TMetafile(FMetafileList[FMetafileList.Count - 1]), 0);
  FontSize := FMetafileCanvas.Font.Size;
  if Printer.Printers.Count > 0 then
  begin
    FMetafileCanvas.Font.PixelsPerInch := GetDeviceCaps(Printer.Handle, LOGPIXELSX);
    if FMetafileCanvas.Font.PixelsPerInch > GetDeviceCaps(Printer.Handle, LOGPIXELSY) then
      FMetafileCanvas.Font.PixelsPerInch := GetDeviceCaps(Printer.Handle, LOGPIXELSY);
  end
  else
    FMetafileCanvas.Font.PixelsPerInch := DefaultPrinterPixelsPerInchX;
  FMetafileCanvas.Font.Size := FontSize;
  Inc(FPageNumber);
  Previewer.FPageCount := FMetafileList.Count - 1;
  //if Assigned(Previewer.OnNeedOpenPreview) then Previewer.OnNeedOpenPreview(Self);
  OpenPreview;
  if Assigned(Previewer.OnPrinterPreviewChanged)
    then Previewer.OnPrinterPreviewChanged(Self);
end;

procedure TPrinterPreview.EndDoc;
begin
  FreeAndNil(FMetafileCanvas);
  Previewer.FPageCount := FMetafileList.Count;
  if FMetafileList.Count = 1 then Previewer.UpdatePageSetup; // UpdatePreview;
  FPageNumber := -1;
  FPrinting := False;
  Previewer.FOnPrinterSetupDialog := OnPrinterSetupDialog;
  OnPrinterSetupDialog := nil;
  Previewer.FOnPrinterSetupChanged := OnPrinterSetupChanged;
  OnPrinterSetupChanged := nil;
  Previewer.PrinterSetupOwner := PrinterSetupOwner;
  PrinterSetupOwner := nil;
  //if Assigned(Previewer.OnNeedOpenPreview) then Previewer.OnNeedOpenPreview(Self);
  OpenPreview;
  if Assigned(Previewer.OnPrinterPreviewChanged)
    then Previewer.OnPrinterPreviewChanged(Self);
end;

function TPrinterPreview.GetAborted: Boolean;
begin
  Result := FAborted;
end;

function TPrinterPreview.GetCanvas: TCanvas;
begin
  Result := FMetafileCanvas;
end;

function TPrinterPreview.GetFonts: TStrings;
begin
  Result := Printer.Fonts;
end;

function TPrinterPreview.GetNumCopies: Integer;
begin
  Result := Printer.Copies;
end;

function TPrinterPreview.GetOrientation: TPrinterOrientation;
begin
  Result := Printer.Orientation;
end;

function TPrinterPreview.GetPageHeight: Integer;
begin
  if Printer.Printers.Count > 0
    then Result := Printer.PageHeight
    else Result := DefaultPrinterPageHeight;
end;

function TPrinterPreview.GetPageNumber: Integer;
begin
  Result := FPageNumber;
end;

function TPrinterPreview.GetPageWidth: Integer;
begin
  if Printer.Printers.Count > 0
    then Result := Printer.PageWidth
    else Result := DefaultPrinterPageWidth;
end;

function TPrinterPreview.GetPrinting: Boolean;
begin
  Result := FPrinting;
end;

function TPrinterPreview.GetTitle: String;
begin
  Result := Printer.Title;
end;

procedure TPrinterPreview.DrawPage(Sender: TObject;
  Canvas: TCanvas; PageNumber: Integer);
begin
  Canvas.Draw(0, 0, TMetafile(FMetafileList[PageNumber - 1]));
end;

procedure TPrinterPreview.SetNumCopies(const Value: Integer);
begin
  Printer.Copies := Value;
end;

procedure TPrinterPreview.SetOnPrinterSetupDialog(const Value: TNotifyEvent);
begin
  FOnPrinterSetupDialog := Value;
end;

procedure TPrinterPreview.SetOrientation(const Value: TPrinterOrientation);
begin
  Printer.Orientation := Value;
end;

procedure TPrinterPreview.SetTitle(const Value: string);
begin
  Printer.Title := Value;
end;

procedure TPrinterPreview.ShowProgress(Percent: Integer);
begin
end;

function TPrinterPreview.GetPropPrinter: TPrinter;
begin
  Result := FPrinter;
end;

function TPrinterPreview.GetFullPageHeight: Integer;
begin
  if Printer.Printers.Count > 0 then
    Result := Printer.PageHeight + GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY) * 2
  else
    Result := DefaultPrinterPageHeight + DefaultPrinterPhysicalOffSetY * 2;
end;

function TPrinterPreview.GetFullPageWidth: Integer;
begin
  if Printer.Printers.Count > 0 then
    Result := Printer.PageWidth + GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX) * 2
  else
    Result := DefaultPrinterPageWidth + DefaultPrinterPhysicalOffSetX * 2;
end;

function TPrinterPreview.GetHandle: HDC;
begin
  Result := Printer.Handle;
end;

function TPrinterPreview.GetPixelsPerInchX: Integer;
begin
  if Printer.Printers.Count > 0 then
    Result := GetDeviceCaps(Printer.Handle, LOGPIXELSX)
  else
    Result := DefaultPrinterPixelsPerInchX;
end;

function TPrinterPreview.GetPixelsPerInchY: Integer;
begin
  if Printer.Printers.Count > 0 then
    Result := GetDeviceCaps(Printer.Handle, LOGPIXELSY)
  else
    Result := DefaultPrinterPixelsPerInchY;
end;

{$IFDEF CIL}
procedure TPrinterPreview.GetPrinter(ADevice, ADriver, APort: String; var ADeviceMode: IntPtr);
{$ELSE}
procedure TPrinterPreview.GetPrinter(ADevice, ADriver, APort: PChar; var ADeviceMode: THandle);
{$ENDIF}
begin
  Printer.GetPrinter(ADevice, ADriver, APort, ADeviceMode);
end;

{$IFDEF CIL}
procedure TPrinterPreview.SetPrinter(ADevice, ADriver, APort: String; ADeviceMode: IntPtr);
{$ELSE}
procedure TPrinterPreview.SetPrinter(ADevice, ADriver, APort: PChar; ADeviceMode: THandle);
{$ENDIF}
begin
  Printer.SetPrinter(ADevice, ADriver, APort, ADeviceMode);
end;

function TPrinterPreview.GetCapabilities: TPrinterCapabilities;
begin
  Result := Printer.Capabilities;
end;

function TPrinterPreview.GetPrinterIndex: Integer;
begin
  Result := Printer.PrinterIndex;
end;

function TPrinterPreview.GetPrinters: TStrings;
begin
  Result := Printer.Printers;
end;

procedure TPrinterPreview.SetPrinterIndex(const Value: Integer);
begin
  Printer.PrinterIndex := Value;
end;

{
function TPrinterPreview.Previewer: TPreviewBox;
begin
  Result := nil;
  if Assigned(OnGetPreviewer) then Result := OnGetPreviewer(Self);
  if not Assigned(Result) then
  begin
    if not Assigned(PreviewFormEh) then PreviewFormEh := TPreviewFormEh.Create(Application.MainForm);
    Result := PreviewFormEh.PreviewEh1;
  end;
end;
}

procedure TPrinterPreview.OpenPreview;
begin
  if Assigned(Previewer.OnOpenPreviewer) then Previewer.OnOpenPreviewer(Self);

{  if Assigned(OnOpenPreviewer) then OnOpenPreviewer(Self)
  else if not Assigned(PreviewFormEh) then
  begin
    PreviewFormEh := PreviewFormEh.Create(Application.MainForm);
    PreviewFormEh.Show;
  end
  else
  begin
    if IsIconic(PreviewFormEh.Handle) then ShowWindow(PreviewFormEh.Handle,sw_Restore);
    BringWindowToTop(PreviewFormEh.Handle);
    if not PreviewFormEh.Visible then PreviewFormEh.Show;
  end;}
end;

procedure TPrinterPreview.Print;
var
  Page: Integer;
  OldPrinter: TPrinter;
begin
  if FMetafileList.Count = 0 then Exit;
  OldPrinter := PrintersSetPrinter(Printer);
  try
    with PrintersPrinter do
    begin
      BeginDoc;
      for Page := 0 to FMetafileList.Count - 1 do
      begin
        DrawPage(Self, Canvas, Page + 1);
        if Page < FMetafileList.Count - 1 then NewPage;
      end;
      EndDoc;
    end;
  finally
    PrintersSetPrinter(OldPrinter);
  end;
end;

function PrinterPreview: TPrinterPreview;
begin
  if FPrinterPreview = nil then
  begin
    PreviewFormEh := TPreviewFormEh.Create(Application);
    FPrinterPreview := PreviewFormEh.PreviewEh1.Printer;
  end;
  Result := FPrinterPreview;
end;

function SetPrinterPreview(NewPrinterPreview: TPrinterPreview): TPrinterPreview;
begin
  Result := FPrinterPreview;
  FPrinterPreview := NewPrinterPreview;
end;

procedure TPrinterPreview.SetPreviewer(const Value: TPreviewBox);
begin
  FPreviewer := Value;
end;

function DefineCursor(Identifier: String): TCursor;
var
  Handle: HCursor;
begin
{$IFDEF CIL}
  Handle := LoadCursor(hInstance, Identifier);
{$ELSE}
  Handle := LoadCursor(hInstance, PChar(Identifier));
{$ENDIF}
  if Handle = 0 then raise EOutOfResources.Create('Cannot load cursor resource');
  for Result := 1 to High(TCursor) do
    if Screen.Cursors[Result] = Screen.Cursors[crArrow] then
    begin
      Screen.Cursors[Result] := Handle;
      Exit;
    end;
  raise EOutOfResources.Create('Too many user-defined cursors');
end;

initialization
  crMagnifier := DefineCursor('MAGNIFIEREH');
  crHand := DefineCursor('HANDEH');
end.

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区产品免费精品久久75| 精品sm在线观看| 综合av第一页| 91蜜桃免费观看视频| 中文字幕一区二区在线观看| 99久久777色| 一区二区三区四区高清精品免费观看 | 免费看日韩精品| 337p亚洲精品色噜噜狠狠| 久久国产精品色| 国产色91在线| 欧美性大战久久| 免费观看30秒视频久久| 亚洲精品在线观| av激情成人网| 日韩**一区毛片| 久久久久久久国产精品影院| 成人动漫视频在线| 日一区二区三区| 亚洲 欧美综合在线网络| 日韩一级完整毛片| 国产成人一区在线| 一区二区高清视频在线观看| 91精品福利在线一区二区三区| 久久99精品久久久久久| 国产精品久久久久久久久动漫| 99久久国产综合色|国产精品| 亚洲精品伦理在线| 欧美成人高清电影在线| 91影院在线观看| 麻豆精品在线播放| 亚洲视频 欧洲视频| 欧美精品粉嫩高潮一区二区| 国产乱码一区二区三区| 成人免费视频一区| 亚洲影院久久精品| 久久蜜桃香蕉精品一区二区三区| 一本一本大道香蕉久在线精品| 麻豆精品一区二区综合av| 最新日韩在线视频| 欧美变态凌虐bdsm| 精品视频999| 成人av电影在线网| 狠狠色伊人亚洲综合成人| 亚洲黄色小视频| 国产人伦精品一区二区| 欧美日产在线观看| 91污片在线观看| 国产成人福利片| 免费的成人av| 亚洲成人动漫一区| 最近日韩中文字幕| 国产日产欧美一区二区视频| 欧美精品乱码久久久久久| 99视频超级精品| 国产成人av电影在线播放| 日本午夜精品一区二区三区电影 | 尤物在线观看一区| 国产亚洲精品aa| 日韩欧美色综合| 欧美亚洲丝袜传媒另类| 99久久婷婷国产| 国产a区久久久| 国产一区二区剧情av在线| 免费高清视频精品| 日韩福利视频网| 亚洲一区日韩精品中文字幕| 国产精品夫妻自拍| 国产精品麻豆久久久| 国产网红主播福利一区二区| 日韩欧美色综合| 欧美电影免费观看高清完整版在| 欧美色爱综合网| 欧美性受极品xxxx喷水| 欧美在线|欧美| 欧美曰成人黄网| 一本到不卡精品视频在线观看 | 日韩精品乱码av一区二区| 亚洲一区二区三区影院| 亚洲一级二级三级| 亚洲午夜精品在线| 午夜日韩在线观看| 免费人成在线不卡| 蜜臀久久99精品久久久久宅男| 秋霞午夜av一区二区三区| 蜜桃精品在线观看| 精品中文字幕一区二区小辣椒| 蜜桃av一区二区| 国产一区二区三区免费| 成人自拍视频在线观看| 成人精品视频一区二区三区| 不卡av免费在线观看| 日本精品免费观看高清观看| 欧洲亚洲国产日韩| 3d动漫精品啪啪一区二区竹菊| 欧美一区二区在线播放| 精品国产电影一区二区| 久久久久久久久一| 国产一区二区在线看| 国产精品羞羞答答xxdd| 成人激情开心网| 在线免费一区三区| 日韩一级片网站| 久久久国产午夜精品| 亚洲精品欧美激情| 日本不卡在线视频| 国产一区二区三区视频在线播放| 成人av动漫网站| 欧美久久婷婷综合色| 久久综合一区二区| 中文字幕在线免费不卡| 亚洲一区影音先锋| 国产一区在线观看视频| 成人黄色电影在线| 欧美日韩成人一区| 久久久久9999亚洲精品| 亚洲免费观看高清完整版在线观看熊| 日韩精品视频网| 成人黄动漫网站免费app| 欧美精品第1页| 国产精品国产三级国产a| 性做久久久久久| 国产69精品久久99不卡| 欧美精品三级在线观看| 国产精品久久精品日日| 蜜臀va亚洲va欧美va天堂 | 国产精品你懂的在线欣赏| 亚洲综合在线观看视频| 国产精品中文欧美| 欧美精品九九99久久| 最新国产成人在线观看| 久久se精品一区精品二区| 色偷偷一区二区三区| 久久无码av三级| 五月天亚洲婷婷| 91香蕉国产在线观看软件| 久久一区二区三区四区| 日韩影院精彩在线| 91在线云播放| 久久久国产精华| 奇米影视一区二区三区| 在线欧美日韩精品| 国产精品久久久久久久裸模 | 国产乱人伦偷精品视频不卡| 欧美日韩国产在线播放网站| 国产精品美女一区二区三区| 经典三级视频一区| 在线不卡免费av| 亚洲国产日韩综合久久精品| 成人精品国产一区二区4080| 精品久久久三级丝袜| 日本在线播放一区二区三区| 欧美艳星brazzers| 国产精品色哟哟| 国内精品免费**视频| 91精品国产综合久久久久久漫画| 又紧又大又爽精品一区二区| 91视频.com| 亚洲日本一区二区三区| 波波电影院一区二区三区| 久久久久国产免费免费 | 国产一区欧美日韩| 欧美精品一区二区在线播放| 蜜臀av亚洲一区中文字幕| 666欧美在线视频| 日韩av在线发布| 91精品免费在线| 美女视频免费一区| 日韩免费高清视频| 国产在线一区二区综合免费视频| 日韩视频在线观看一区二区| 日本免费新一区视频| 欧美大片日本大片免费观看| 日韩不卡手机在线v区| 91精品免费观看| 久久99精品国产麻豆不卡| 精品国免费一区二区三区| 韩国精品久久久| 国产欧美日韩久久| 成人av在线一区二区三区| 亚洲欧美另类久久久精品| 在线免费观看日本欧美| 污片在线观看一区二区| 69av一区二区三区| 国内成+人亚洲+欧美+综合在线| 久久九九久精品国产免费直播| 成人亚洲精品久久久久软件| 中文字幕的久久| 91看片淫黄大片一级在线观看| 亚洲综合丝袜美腿| 日韩视频免费观看高清完整版 | 精品国产一区二区三区久久久蜜月 | 国产农村妇女毛片精品久久麻豆 | 欧美在线一区二区三区| 午夜视黄欧洲亚洲| 精品国精品国产尤物美女| 成人网页在线观看| 亚洲图片欧美一区| 精品久久久久av影院| 北条麻妃国产九九精品视频|