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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qrprev.pas

?? delphi7報表打印控件源碼 可以設計報表
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
{ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  :: QuickReport 4.0 for Delphi and C++Builder               ::
  ::                                                         ::
  :: QRPREV.PAS - QUICKREPORT STANDARD PREVIEW FORM          ::
  ::                                                         ::
  :: Copyright (c) 2003 A Lochert / QBS Software             ::
  :: All Rights Reserved                                     ::
  ::                                                         ::
  :: http://www.qusoft.com                                   ::
  :: 5/12/2003  new preview for 4                            ::
  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: }

{$I QRDEFS.INC}

unit QRPrev;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, StdCtrls, Buttons, QRPrntr, QR4const, QRExtra, ComCtrls, ToolWin,
  Menus, ImgList, Grids, printers, jpeg, QRExport, QRWebFilt, QRPDFFilt;

type
  TQRStandardPreview = class(TForm)
    StatusBar: TStatusBar;
    ToolBar1: TToolBar;
    ZoomFit: TToolButton;
    Zoom100: TToolButton;
    ZoomToWidth: TToolButton;
    FirstPage: TToolButton;
    PreviousPage: TToolButton;
    ToolButton2: TToolButton;
    LastPage: TToolButton;
    PrintSetup: TToolButton;
    Print: TToolButton;
    SaveReport: TToolButton;
    LoadReport: TToolButton;
    Images: TImageList;
    ToolButton1: TToolButton;
    ExitButton: TSpeedButton;
    QRPreview: TQRPreview;
    Splitter1: TSplitter;
    Spacer2: TToolButton;
    Tabs: TPageControl;
    TabThumbs: TTabSheet;
    TabSearchResult: TTabSheet;
    Splitter2: TSplitter;
    GroupBox1: TGroupBox;
    SearchResultBox: TListBox;
    SearchTextLabel: TLabel;
    ThumbGrid: TDrawGrid;
    Spacer3: TToolButton;
    Spacer4: TToolButton;
    FindButton: TToolButton;
    Spacer1: TToolButton;
    GotoPageButton: TToolButton;
    Spacer5: TToolButton;
    PopupMenu1: TPopupMenu;
    JPG1: TMenuItem;
    N1: TMenuItem;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ZoomToFitClick(Sender: TObject);
    procedure ZoomTo100Click(Sender: TObject);
    procedure ZoomToWidthClick(Sender: TObject);
    procedure FirstPageClick(Sender: TObject);
    procedure PrevPageClick(Sender: TObject);
    procedure NextPageClick(Sender: TObject);
    procedure LastPageClick(Sender: TObject);
    procedure PrintClick(Sender: TObject);
    procedure ExitClick(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure SaveClick(Sender: TObject);
    procedure PrintSetupClick(Sender: TObject);
    procedure LoadClick(Sender: TObject);
    procedure QRPreviewPageAvailable(Sender: TObject; PageNum: Integer);
    procedure QRPreviewProgressUpdate(Sender: TObject; Progress: Integer);
    procedure FormCreate(Sender: TObject);
    procedure QRPreviewHyperlink(Sender: TObject; EventType: TQRHyperlinkEventType; Link: string; var Handled: Boolean);
    procedure OutlineViewChange(Sender: TObject; Node: TTreeNode);
    procedure ThumbGridDrawCell(Sender: TObject; ACol, ARow: Integer; ARect: TRect; State: TGridDrawState);
    procedure ThumbGridSelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean);
    procedure FindButtonClick(Sender: TObject);
    procedure GotoPageButtonClick(Sender: TObject);
    procedure JPG1Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
  private
    FQRPrinter: TQRPrinter;
    FReportOrientation: TPrinterOrientation;
    Gauge: TProgressBar;
    LastProgress: integer;
    ThumbFontHeight,
      ThumbDrawHeight,
      ThumbDrawWidth,
      ThumbTopMargin,
      ThumbLeftMargin: integer;
    ShowThumbs, ShowSearch: boolean;
    InitZoom: TQRZoomstate;
  public
    constructor CreatePreview(AOwner: TComponent; aQRPrinter: TQRPrinter); virtual;
    procedure Show;
    procedure UpdateInfo;
    procedure SelectPage(aPageNumber: integer);
    procedure ResizeThumb(Sender: TObject);
    function GetTextSearch(var MatchCase: boolean; var AText: string): boolean;
    property QRPrinter: TQRPrinter read FQRPrinter write FQRPrinter;
  end;

  TResizeGrid = class(TDrawGrid)
  public
    property OnResize;
  end;

implementation

uses
  qrsearchdlg, quickrpt;
var
  ThumbUpdating: boolean;
  ReportTitle: string;
//  QRSearch;
{$R *.DFM}

constructor TQRStandardPreview.CreatePreview(AOwner: TComponent; aQRPrinter: TQRPrinter);
begin
  inherited Create(AOwner);
  QRPrinter := aQRPrinter;
  if qrprinter.parentreport is TCustomquickrep then
  begin
    FormStyle := TCustomquickrep(qrprinter.ParentReport).PrevFormstyle;
    width := TCustomquickrep(qrprinter.ParentReport).PreviewWidth;
    height := TCustomquickrep(qrprinter.ParentReport).Previewheight;
    WindowState := TCustomquickrep(qrprinter.ParentReport).PreviewInitialState;
    ShowThumbs := TCustomquickrep(qrprinter.ParentReport).PrevShowThumbs;
    ShowSearch := TCustomquickrep(qrprinter.ParentReport).PrevShowSearch;
    InitZoom := TCustomquickrep(qrprinter.ParentReport).PrevInitialZoom;
    reportTitle := TCustomquickrep(qrprinter.ParentReport).ReportTitle;
    FReportOrientation := TCustomquickrep(qrprinter.ParentReport).Page.Orientation;
  end
  else
  begin // this should never happen
    WindowState := wsMaximized;
    ShowThumbs := true;
    ShowSearch := true;
  end;
  QRPreview.QRPrinter := aQRPrinter;
  if (QRPrinter <> nil) and (QRPrinter.Title <> '') then Caption := QRPrinter.Title;
  Gauge := TProgressBar.Create(Self);
  Gauge.Top := 2;
  Gauge.Left := 2;
  Gauge.Height := 10;
  Gauge.Width := 100;
  LastProgress := 0;
  Tabs.Visible := ShowThumbs or ShowSearch;
  TabThumbs.TabVisible := ShowThumbs;
  if not ShowSearch then
  begin
    TabSearchResult.TabVisible := false;
    findButton.Visible := false;
  end;
  if InitZoom = QRZoomtofit then
  begin
    QRPreview.ZoomToFit;
    ZoomFit.Down := true;
  end
  else if InitZoom = QRZoomtowidth then
  begin
    QRPreview.ZoomToWidth;
    ZoomToWidth.Down := true;
  end
  else
  begin
    QRPreview.Zoom := 100;
    QRPreview.UpdateZoom;
    Zoom100.Down := true;
  end;
  if qrprinter.status = mpFinished then
    Print.Enabled := true;
end;

procedure TQRStandardPreview.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  QRPrinter.ClosePreview(Self);
  //QRPrinter.ClosePreviewA(Self);
  Action := caFree;
end;

procedure TQRStandardPreview.UpdateInfo;
begin
  StatusBar.Panels[1].Text := SqrPage + ' ' + IntToStr(QRPreview.PageNumber) + ' ' +
    SqrOf + ' ' + IntToStr(QRPreview.QRPrinter.PageCount);

  StatusBar.Panels[2].Text := ReportTitle;

end;

procedure TQRStandardPreview.ZoomToFitClick(Sender: TObject);
begin
  Application.ProcessMessages;
  QRPreview.ZoomToFit;
end;

procedure TQRStandardPreview.ZoomTo100Click(Sender: TObject);
begin
  Application.ProcessMessages;
  QRPreview.Zoom := 100;
  QRPreview.UpdateZoom;
end;

procedure TQRStandardPreview.ZoomToWidthClick(Sender: TObject);
begin
  Application.ProcessMessages;
  QRPreview.ZoomToWidth;
end;

procedure TQRStandardPreview.SelectPage(aPageNumber: integer);
begin
  QRPreview.PageNumber := APageNumber;
  UpdateInfo;
  // set thumb row
  if (aPagenumber > 0) and (aPagenumber <= QRPrinter.PageCount) then
  begin
    ThumbUpdating := true;
    ThumbGrid.Row := APageNumber - 1;
    ThumbUpdating := false;
  end;
end;

procedure TQRStandardPreview.FirstPageClick(Sender: TObject);
begin
  SelectPage(1)
end;

procedure TQRStandardPreview.PrevPageClick(Sender: TObject);
begin
  SelectPage(QRPreview.PageNumber - 1);
end;

procedure TQRStandardPreview.NextPageClick(Sender: TObject);
begin
  SelectPage(QRPreview.PageNumber + 1);
end;

procedure TQRStandardPreview.LastPageClick(Sender: TObject);
begin
  SelectPage(QRPrinter.PageCount);
end;

procedure TQRStandardPreview.PrintClick(Sender: TObject);
begin
  QRPrinter.Print;
end;

procedure TQRStandardPreview.ExitClick(Sender: TObject);
begin
  Close;
end;

procedure TQRStandardPreview.FormResize(Sender: TObject);
begin
  QRPreview.UpdateZoom;
end;

procedure TQRStandardPreview.Show;
begin
  inherited Show;
  UpdateInfo;
end;

procedure TQRStandardPreview.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  case Key of
    VK_Next: if Shift = [ssCtrl] then
        LastPageClick(Self)
      else
        NextPageClick(Self);
    VK_Prior: if Shift = [ssCtrl] then
        FirstPageClick(Self)
      else
        PrevPageClick(Self);
    VK_Home: FirstPageClick(Self);
    VK_End: LastPageClick(Self);
    VK_Escape: ExitClick(self)
  end;
end;

procedure TQRStandardPreview.SaveClick(Sender: TObject);
var
  aExportFilter: TQRExportFilter;
  FileExt: string;
  I: integer;
begin
  aExportFilter := nil;
  with TSaveDialog.Create(Application) do
  try
    Title := SqrSaveReport;
    Filter := QRExportFilterLibrary.SaveDialogFilterString;
    DefaultExt := cQRPDefaultExt;
    if Execute then
    begin
      if FilterIndex = 1 then
        QRPrinter.Save(Filename)
      else
      begin
        try
          aExportFilter := TQRExportFilterLibraryEntry(
            QRExportFilterLibrary.Filters[FilterIndex - 2]).ExportFilterClass.Create(Filename);
          QRPrinter.ExportToFilter(aExportFilter);
        finally
          aExportFilter.Free
        end
      end
    end;
  finally
    Free;
  end;
end;

procedure TQRStandardPreview.PrintSetupClick(Sender: TObject);
var
  prep: TCustomquickrep;
begin
  QRPrinter.PrintSetup;
  if qrprinter.ParentReport is TCustomquickrep then
  begin
    prep := TCustomquickrep(qrprinter.ParentReport);
    qrprinter.PrinterIndex := prep.PrinterSettings.printerindex;
    QRPrinter.aPrinterSettings.OutputBin := TQRBin(prep.UserPrinterSettings.CustomBinCode);
    QRPrinter.aPrinterSettings.Collate := prep.UserPrinterSettings.Collate;
    QRPrinter.aPrinterSettings.ColorOption := prep.UserPrinterSettings.ColorOption;
    QRPrinter.aPrinterSettings.PrintQuality := prep.UserPrinterSettings.PrintQuality;
    QRPrinter.aPrinterSettings.Copies := prep.UserPrinterSettings.Copies;
    QRPrinter.aPrinterSettings.Duplex := prep.UserPrinterSettings.ExtendedDuplex = 1;
    QRPrinter.aPrinterSettings.CustomBinCode := prep.UserPrinterSettings.CustomBinCode;
    QRPrinter.aPrinterSettings.UseCustomBinCode := prep.PrinterSettings.UseCustomBinCode;
    QRprinter.FirstPage := prep.PrinterSettings.FirstPage;
    QRprinter.LastPage := prep.PrinterSettings.LastPage;
    QRPrinter.aPrinterSettings.Duplex := prep.UserPrinterSettings.Duplex;
  end;
end;

procedure TQRStandardPreview.LoadClick(Sender: TObject);
begin
  with TOpenDialog.Create(Application) do
  try
    Title := SqrLoadReport;
    Filter := SqrQRFile + ' (*.' + cQRPDefaultExt + ')|*.' + cqrpDefaultExt;
    if Execute then
      if FileExists(FileName) then
      begin
        QRPrinter.Load(Filename);
        reportTitle := filename;
        QRPreview.PageNumber := 1;
        QRPreview.PreviewImage.PageNumber := 1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
岛国av在线一区| 久久精品综合网| 国产亚洲女人久久久久毛片| 樱花影视一区二区| 国产成人精品亚洲日本在线桃色| 欧美性欧美巨大黑白大战| 国产精品麻豆视频| 国产一区二区视频在线| 91精品国模一区二区三区| 亚洲特黄一级片| 国产成人免费视频网站高清观看视频| 欧美日韩美少妇| 亚洲综合另类小说| a美女胸又www黄视频久久| 国产婷婷色一区二区三区在线| 五月综合激情网| 欧美伊人久久大香线蕉综合69 | 国产一区二区三区观看| 欧美日韩一区二区在线观看 | 欧美www视频| 麻豆高清免费国产一区| 91成人看片片| 亚洲精品久久嫩草网站秘色| 99久久伊人网影院| 国产欧美综合在线| 国产很黄免费观看久久| 久久久精品免费免费| 国产乱码精品一区二区三区五月婷| 制服丝袜亚洲色图| 视频一区中文字幕| 制服丝袜亚洲精品中文字幕| 亚洲v日本v欧美v久久精品| 欧美三区在线观看| 视频一区视频二区中文| 欧美日本在线观看| 日韩电影在线观看电影| 欧美一区二区视频网站| 美女视频一区在线观看| 26uuu精品一区二区| 国产剧情一区二区三区| 国产日韩欧美精品电影三级在线| 国产aⅴ综合色| 亚洲人成人一区二区在线观看 | 国产精品一二三四| 国产精品久久久久久亚洲伦| 91蜜桃免费观看视频| 一区二区三区影院| 9191久久久久久久久久久| 婷婷开心久久网| 精品久久人人做人人爽| 成人激情开心网| 怡红院av一区二区三区| 在线成人免费观看| 国产在线观看一区二区| 中文字幕亚洲视频| 欧美性感一类影片在线播放| 久久99精品一区二区三区| 欧美激情在线一区二区| 欧美性色黄大片| 久久97超碰色| 亚洲日本va午夜在线影院| 欧美人妇做爰xxxⅹ性高电影| 蜜桃视频在线一区| 中文字幕在线视频一区| 欧美乱妇20p| 成人成人成人在线视频| 日韩精品久久理论片| 欧美激情在线一区二区| 欧美日韩高清一区二区三区| 国产福利精品一区| 香蕉久久夜色精品国产使用方法 | 欧美电视剧免费观看| 成人免费看视频| 蜜臀av性久久久久蜜臀aⅴ| 国产精品久久久一本精品| 91精品国产麻豆国产自产在线| 成熟亚洲日本毛茸茸凸凹| 日韩精品一二三四| 国产精品久久久久久久久快鸭| 欧美一区午夜精品| 欧美亚洲国产一卡| 成人性生交大片免费| 蜜芽一区二区三区| 亚洲午夜日本在线观看| 国产欧美精品区一区二区三区| 欧美日韩精品免费| 97se亚洲国产综合自在线 | 欧美mv日韩mv国产网站app| 91论坛在线播放| 国产成人a级片| 日本在线不卡视频| 性做久久久久久免费观看欧美| 亚洲欧美综合另类在线卡通| 欧美成人一区二区| 91精品国产全国免费观看 | 99九九99九九九视频精品| 国产一区二区三区四区在线观看| 日韩极品在线观看| 亚洲一区二区在线免费看| 亚洲欧洲av色图| 国产精品福利一区二区| 欧美激情在线一区二区三区| 精品国产凹凸成av人导航| 日韩欧美一区在线观看| 7777精品伊人久久久大香线蕉超级流畅| 97精品国产露脸对白| 99精品在线免费| 99久久99精品久久久久久| 99在线视频精品| 99久久夜色精品国产网站| 成人久久视频在线观看| 成人午夜免费电影| 成人激情免费网站| 99久久伊人网影院| 色婷婷综合久久久中文一区二区 | 亚洲综合成人在线视频| 一区二区三区日韩欧美精品| 亚洲一线二线三线久久久| 亚洲人成网站影音先锋播放| 一区二区在线免费观看| 亚洲大片一区二区三区| 日本va欧美va精品发布| 免费不卡在线观看| 国产高清一区日本| 91啪亚洲精品| 欧美精品三级日韩久久| 日韩视频在线永久播放| 国产区在线观看成人精品| 国产精品国产三级国产三级人妇| 国产精品美女久久久久久久久久久 | 极品少妇xxxx精品少妇偷拍| 国产精品亚洲视频| 成人免费毛片嘿嘿连载视频| 91啦中文在线观看| 欧美一区二区三区视频免费| 精品美女被调教视频大全网站| 久久人人爽人人爽| 中文字幕中文字幕在线一区| 亚洲成人自拍一区| 国产美女av一区二区三区| 成人av午夜影院| 欧美美女一区二区三区| 国产午夜精品在线观看| 亚洲欧美激情一区二区| 日韩av成人高清| 播五月开心婷婷综合| 欧美日韩精品福利| 国产农村妇女毛片精品久久麻豆| 亚洲美女区一区| 久久99国产乱子伦精品免费| 99视频一区二区三区| 91精品国产综合久久精品性色| 久久久国产精品麻豆| 亚洲1区2区3区视频| 成人动漫中文字幕| 欧美日韩大陆一区二区| 国产精品久久久久久久裸模 | 成人午夜视频福利| 欧美老年两性高潮| 国产精品美女久久久久久久久| 日韩av网站在线观看| 91浏览器打开| 国产欧美日韩在线视频| 天堂在线一区二区| 91免费观看在线| 欧美精彩视频一区二区三区| 日韩黄色片在线观看| 91在线porny国产在线看| 日韩精品一区二区三区在线播放| 亚洲欧美日韩小说| 岛国精品一区二区| 久久蜜桃一区二区| 免费观看日韩av| 欧美日韩国产高清一区| 亚洲欧洲制服丝袜| 不卡在线观看av| 久久精品在线免费观看| 美女视频免费一区| 欧美一级日韩不卡播放免费| 亚洲精品视频免费看| 成人高清视频在线| 久久五月婷婷丁香社区| 美女诱惑一区二区| 日韩视频国产视频| 亚洲国产色一区| 欧美在线观看一区| 一区二区三区自拍| 色噜噜偷拍精品综合在线| 国产精品国产自产拍高清av | 欧美精品99久久久**| 樱花影视一区二区| 在线视频综合导航| 亚洲欧美日韩人成在线播放| 99久久99久久精品国产片果冻 | 日本在线不卡一区| 777a∨成人精品桃花网| 亚洲大片免费看| 欧美一区二区三区免费在线看| 亚洲超碰精品一区二区| 欧美日本免费一区二区三区|