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

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

?? rpformpreview.pas

?? 一套DELPHI病歷管理源碼
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
{*************************************************************************}
{ Rave Reports version 5.0                                                }
{ Copyright (c), 1995-2002, Nevrona Designs, all rights reserved          }
{*************************************************************************}

unit RpFormPreview;

interface

uses
  Windows, Messages, Graphics, Controls, Forms, Dialogs, StdCtrls,
  Buttons, ExtCtrls, Menus, ActnList, ImgList, ComCtrls, ToolWin,
  SysUtils, Classes, RpBase, RpFiler, RpRenderPrinter, RpRenderPreview,
  RpDefine, RpSystem, RpFormSetup;

type
  TRavePreviewForm = class(TForm)
    ScrollBox1: TScrollBox;
    ActionList1: TActionList;
    MainMenu1: TMainMenu;
    PopupMenu1: TPopupMenu;
    actnFile_Print: TAction;
    actnFile_Save: TAction;
    actnFile_Exit: TAction;
    actnFile_Open: TAction;
    sbarMain: TStatusBar;
    actnPage_First: TAction;
    actnPage_Next: TAction;
    actnPage_Previous: TAction;
    actnPage_Last: TAction;
    actnZoom_In: TAction;
    actnZoom_Out: TAction;
    actnZoom_PageWidth: TAction;
    actnZoom_Page: TAction;
    Page1: TMenuItem;
    Zoom1: TMenuItem;
    First1: TMenuItem;
    Next1: TMenuItem;
    Previous1: TMenuItem;
    Last1: TMenuItem;
    N2: TMenuItem;
    GotoPage1: TMenuItem;
    In1: TMenuItem;
    Out1: TMenuItem;
    N3: TMenuItem;
    Page2: TMenuItem;
    PageWidth1: TMenuItem;
    In2: TMenuItem;
    Out2: TMenuItem;
    ilstActions: TImageList;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    ToolButton8: TToolButton;
    ToolButton10: TToolButton;
    ToolButton11: TToolButton;
    ToolButton12: TToolButton;
    ToolButton13: TToolButton;
    ToolButton14: TToolButton;
    dlogOpen: TOpenDialog;
    dlogSave: TSaveDialog;
    File1: TMenuItem;
    Open1: TMenuItem;
    SaveAs1: TMenuItem;
    Print1: TMenuItem;
    N1: TMenuItem;
    Exit1: TMenuItem;
    ZoomEdit: TEdit;
    PageEdit: TEdit;
    PageLabel: TPanel;
    Panel1: TPanel;
    Panel2: TPanel;
    ToolButton9: TToolButton;
    ToolButton15: TToolButton;
    Panel3: TPanel;
    PreviewTimer: TTimer;
    Panel4: TPanel;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure NDRPreviewPageChange(Sender: TObject);
    procedure NDRPreviewZoomChange(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: word; Shift: TShiftState);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure actnFile_ExitExecute(Sender: TObject);
    procedure actnPage_GotoPageExecute(Sender: TObject);
    procedure actnZoom_InExecute(Sender: TObject);
    procedure actnZoom_OutExecute(Sender: TObject);
    procedure actnPage_PreviousExecute(Sender: TObject);
    procedure actnPage_NextExecute(Sender: TObject);
    procedure actnZoom_PageWidthExecute(Sender: TObject);
    procedure actnZoom_PageExecute(Sender: TObject);
    procedure actnFile_PrintExecute(Sender: TObject);
    procedure actnPage_FirstExecute(Sender: TObject);
    procedure actnPage_LastExecute(Sender: TObject);
    procedure actnPage_FirstUpdate(Sender: TObject);
    procedure actnPage_PreviousUpdate(Sender: TObject);
    procedure actnPage_NextUpdate(Sender: TObject);
    procedure actnPage_LastUpdate(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure actnFile_SaveExecute(Sender: TObject);
    procedure actnFile_OpenExecute(Sender: TObject);
    procedure actnFile_PrintUpdate(Sender: TObject);
    procedure actnFile_SaveUpdate(Sender: TObject);
    procedure actnZoom_InUpdate(Sender: TObject);
    procedure actnZoom_OutUpdate(Sender: TObject);
    procedure actnZoom_PageWidthUpdate(Sender: TObject);
    procedure actnZoom_PageUpdate(Sender: TObject);
    procedure ZoomEditKeyPress(Sender: TObject; var Key: Char);
    procedure ZoomEditExit(Sender: TObject);
    procedure PageEditExit(Sender: TObject);
    procedure PageEditKeyPress(Sender: TObject; var Key: Char);
    procedure PreviewTimerTimer(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormShow(Sender: TObject);
  protected
    FPageNum: integer;
    FOnGenerate: TNotifyEvent;
    FInputFileName: string;
    FInputStream: TStream;
    FOnAfterPreviewPrint: TNotifyEvent;

    procedure AfterPreviewPrintEvent; virtual;
    procedure SetSaveOptions(SaveDialog: TSaveDialog);
    procedure NewRenderPage(Sender: TObject);
    procedure SetButtonState;
  public
    ReportSystem: TRvSystem;
    FormClosed: boolean;
    RvRenderPrinter: TRvRenderPrinter;
    RvRenderPreview: TRvRenderPreview;
    //
    procedure InitFromRPSystem;
    procedure OpenFile(const AFileName: string);
    class procedure PreviewFile(const AFileName: string);

    property PageNum: integer read FPageNum write FPageNum;
    property OnGenerate: TNotifyEvent read FOnGenerate write FOnGenerate;
    property OnAfterPreviewPrint: TNotifyEvent read FOnAfterPreviewPrint write FOnAfterPreviewPrint;
    property InputFileName: string read FInputFileName write FInputFileName;
    property InputStream: TStream read FInputStream write FInputStream;
  end;

var
  RavePreviewForm: TRavePreviewForm;

implementation

{$R *.dfm}

uses
  RpRender;

procedure TRavePreviewForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  FormClosed := true;
end;

procedure TRavePreviewForm.NDRPreviewPageChange(Sender: TObject);
begin
  with RvRenderPreview do begin
    PageEdit.Text := IntToStr(CurrentPage);
    PageLabel.Caption := Trans('of') + ' ' + IntToStr(Pages);
    PageLabel.Width := self.canvas.TextWidth(PageLabel.Caption) + 8;
    sbarMain.SimpleText := Trans('Page') + ' ' + IntToStr(CurrentPage) +
     ' ' + Trans('of') + ' ' + IntToStr(Pages);
  end; { with }
end;

procedure TRavePreviewForm.NDRPreviewZoomChange(Sender: TObject);
var
  S1: string[10];
begin
  Str(RvRenderPreview.ZoomFactor:1:1,S1);
  ZoomEdit.Text := S1;
  if Assigned(RvRenderPreview.Image) then begin
    RvRenderPreview.RedrawPage;
  end; { if }
end;

procedure TRavePreviewForm.FormKeyDown(Sender: TObject; var Key: word; Shift: TShiftState);
var
  I1: integer;
begin
  case Key of
    vk_Up: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          I1 := Position - Increment;
          if I1 < 0 then begin
            if RvRenderPreview.CurrentPage > 1 then begin
              RvRenderPreview.PrevPage;
              I1 := Range;
            end else begin
              I1 := 0;
            end; { else }
          end; { if }
          Position := I1;
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_Down: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          I1 := Position + Increment;
          if I1 >= Range then begin
            I1 := Range - 1;
          end; { if }
          Position := I1;
          if (I1 > Position) and (RvRenderPreview.CurrentPage < RvRenderPreview.Pages) then begin
            RvRenderPreview.NextPage;
            Position := 0;
          end; { if }
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_Home: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          Position := 0;
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_End: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          Position := Range - 1;
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_Prior: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          if (Position = 0) and (RvRenderPreview.CurrentPage > 1) then begin
            RvRenderPreview.PrevPage;
            SetButtonState;
            I1 := Range - 1;
          end else begin
            I1 := Position - ScrollBox1.Height;
            if I1 < 0 then begin
              I1 := 0;
            end; { if }
          end; { else }
          Position := I1;
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_Next: begin
      if (Shift = []) or (Shift = [ssCtrl]) then begin
        with ScrollBox1.VertScrollBar do begin
          I1 := Position + ScrollBox1.Height;
          if I1 >= Range then begin
            if RvRenderPreview.CurrentPage < RvRenderPreview.Pages then begin
              RvRenderPreview.NextPage;
              SetButtonState;
              I1 := 0;
            end else begin
              I1 := Range - 1;
            end; { else }
          end; { if }
          Position := I1;
          Key := 0;
        end; { with }
      end; { if }
    end;
    vk_Left: begin
      with ScrollBox1.HorzScrollBar do begin
        if Shift = [ssCtrl] then begin
          I1 := Position - Increment;
          if I1 < 0 then begin
            I1 := 0;
          end; { if }
          Position := I1;
          Key := 0;
        end else if Shift = [ssCtrl,ssShift] then begin
          I1 := Position - ScrollBox1.Width;
          if I1 < 0 then begin
            I1 := 0;
          end; { if }
          Position := I1;
          Key := 0;
        end; { else }
      end; { with }
    end;
    vk_Right: begin
      with ScrollBox1.HorzScrollBar do begin
        if Shift = [ssCtrl] then begin
          I1 := Position + Increment;
          if I1 >= Range then begin
            I1 := Range - 1;
          end; { if }
          Position := I1;
          Key := 0;
        end else if Shift = [ssCtrl,ssShift] then begin
          I1 := Position + ScrollBox1.Width;
          if I1 >= Range then begin
            I1 := Range - 1;
          end; { if }
          Position := I1;
          Key := 0;
        end; { else }
      end; { with }
    end;
  end; { case }
end;

procedure TRavePreviewForm.FormKeyPress(Sender: TObject; var Key: Char);
var
  ValidKeys: string;
begin
  if (Key = #27) or (Key = 'x') then begin
    actnFile_Exit.Execute;
    Key := #0;
  end else begin
    ValidKeys := {Trans-}'eEbBwWfFnNpP+-01234567890.'#13#8;
    if Pos(Key, ValidKeys) > 0 then begin
      case Key of
        'b','B': begin
          RvRenderPreview.RenderPage(1);
          SetButtonState;
          Key := #0;
        end;
        'e','E': begin
          RvRenderPreview.RenderPage(RvRenderPreview.Pages);
          SetButtonState;
          Key := #0;
        end;
        '-': begin
          RvRenderPreview.ZoomOut;
          SetButtonState;
          Key := #0;
        end;
        '+': begin
          RvRenderPreview.ZoomIn;
          SetButtonState;
          Key := #0;
        end;
        'w','W': begin
          RvRenderPreview.ZoomFactor := RvRenderPreview.ZoomPageWidthFactor;
          SetButtonState;
          Key := #0;
        end;
        'f','F': begin
          RvRenderPreview.ZoomFactor := RvRenderPreview.ZoomPageFactor;
          SetButtonState;
          Key := #0;
        end;
        'n','N': begin
          if RvRenderPreview.CurrentPage < RvRenderPreview.Pages then begin
            RvRenderPreview.NextPage;
            SetButtonState;
          end; { if }
          Key := #0;
        end;
        'p','P': begin
          if RvRenderPreview.CurrentPage > 1 then begin
            RvRenderPreview.PrevPage;
            SetButtonState;
          end; { if }
          Key := #0;
        end;
      end; { case }
    end else begin
      Key := #0;
    end; { else }
  end; { else }
  if Key = #0 then begin
    PageEdit.SelStart := 0;
    PageEdit.SelLength := Length(PageEdit.Text);
    ZoomEdit.SelStart := 0;
    ZoomEdit.SelLength := Length(ZoomEdit.Text);
  end; { if }
end;

procedure TRavePreviewForm.actnFile_ExitExecute(Sender: TObject);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产麻豆婷婷洗澡| 一本在线高清不卡dvd| 豆国产96在线|亚洲| 欧美老女人第四色| 国产精品二区一区二区aⅴ污介绍| 亚洲国产精品精华液网站| 国产激情一区二区三区四区| 欧美亚洲动漫精品| 自拍偷在线精品自拍偷无码专区| 日本亚洲三级在线| 日本国产一区二区| 成人免费小视频| 国产精品一线二线三线精华| 欧美日韩小视频| 亚洲免费在线视频一区 二区| 国模无码大尺度一区二区三区| 欧美片在线播放| 一二三四区精品视频| 9l国产精品久久久久麻豆| 久久久久久久久久久黄色| 日韩二区三区在线观看| 欧美三区在线视频| 一区二区三区免费| 99国产欧美另类久久久精品| 久久久精品天堂| 韩国女主播一区二区三区| 欧美精品v国产精品v日韩精品| 一区二区三区精品在线观看| 99久久久久久| ●精品国产综合乱码久久久久| 国产成人精品免费| 欧美国产精品劲爆| 国产福利一区二区三区| 国产情人综合久久777777| 国产精品综合一区二区三区| 欧美不卡123| 国精产品一区一区三区mba桃花| 91精品国产91久久久久久最新毛片| 亚洲第一会所有码转帖| 欧美日韩国产高清一区二区| 日韩在线a电影| 欧美成人a∨高清免费观看| 免费成人在线影院| 久久久www免费人成精品| 国产91露脸合集magnet| 国产欧美日韩在线| 一本久久a久久精品亚洲| 亚洲一区二区三区在线播放| 欧美日韩一级黄| 美国三级日本三级久久99| 欧美videossexotv100| 国产风韵犹存在线视精品| 亚洲三级理论片| 欧美色视频一区| 日韩av在线播放中文字幕| 精品乱人伦小说| 成人美女视频在线观看18| 亚洲美女屁股眼交| 欧美精品视频www在线观看| 久久99久久99精品免视看婷婷| 久久久久国色av免费看影院| av在线这里只有精品| 亚洲香蕉伊在人在线观| 欧美成人一区二区三区片免费 | 国产精品三级久久久久三级| 成人免费视频免费观看| 亚洲国产一区二区三区| 精品欧美一区二区久久| 99久久精品国产一区二区三区| 亚洲成年人影院| 久久久精品2019中文字幕之3| 色中色一区二区| 国产综合久久久久影院| 亚洲特黄一级片| 日韩欧美专区在线| 91亚洲精华国产精华精华液| 青青草91视频| 综合久久综合久久| 亚洲精品在线网站| 欧美日韩美少妇| 成人激情综合网站| 毛片不卡一区二区| 亚洲精品成人悠悠色影视| 久久九九国产精品| 欧美一区二区三区视频在线观看| 粉嫩aⅴ一区二区三区四区| 天堂影院一区二区| 亚洲日本在线视频观看| 精品国产髙清在线看国产毛片| 91丨九色丨蝌蚪富婆spa| 狠狠网亚洲精品| 亚洲成人你懂的| 亚洲欧美日韩久久精品| 国产欧美一区二区精品忘忧草| 337p亚洲精品色噜噜噜| 在线视频国内自拍亚洲视频| 国产精品一区在线观看乱码| 免费不卡在线观看| 亚洲成人你懂的| 亚洲制服丝袜在线| 亚洲激情网站免费观看| 国产精品毛片久久久久久久| 久久这里只有精品首页| 欧美一三区三区四区免费在线看| 99久久99久久久精品齐齐| 国产馆精品极品| 国产福利一区在线观看| 国产一区欧美日韩| 国内成+人亚洲+欧美+综合在线 | 亚洲国产精品高清| 日韩精品中文字幕在线不卡尤物| 在线播放欧美女士性生活| 欧洲一区二区av| 在线视频综合导航| 色综合天天狠狠| 色中色一区二区| 91麻豆swag| 色综合 综合色| 日本韩国欧美在线| 欧美三级视频在线| 欧美精品三级在线观看| 欧美精品久久久久久久多人混战 | 欧美丝袜自拍制服另类| 精品婷婷伊人一区三区三| 欧美视频三区在线播放| 欧美日韩大陆在线| 日韩欧美激情在线| 久久综合色8888| 中文字幕第一区综合| 国产精品电影一区二区| 自拍偷自拍亚洲精品播放| 亚洲最大成人综合| 日韩和的一区二区| 国产在线不卡视频| av成人免费在线| 欧美三级资源在线| 欧美一区2区视频在线观看| 日韩欧美国产三级电影视频| 国产校园另类小说区| 亚洲视频一二三| 午夜在线成人av| 国产在线精品国自产拍免费| 成人av在线影院| 色婷婷久久99综合精品jk白丝| 欧美久久久久久蜜桃| 欧美精品一区二区精品网| 中文字幕二三区不卡| 亚洲激情自拍视频| 国产自产视频一区二区三区 | 国产精品99久久久久久宅男| av中文字幕不卡| 91精品国产乱| 国产精品国产三级国产aⅴ入口| 亚洲精品ww久久久久久p站| 男女激情视频一区| 成人av资源在线| 91精品国产综合久久福利软件| 久久久久久久久99精品| 亚洲一区二区三区四区在线 | 精品第一国产综合精品aⅴ| 中文字幕中文字幕一区| 婷婷六月综合网| 成人在线视频首页| 777xxx欧美| 亚洲欧美电影一区二区| 欧美a级理论片| 色综合久久六月婷婷中文字幕| 日韩视频免费观看高清完整版 | 欧美色手机在线观看| 中国av一区二区三区| 欧美a一区二区| 欧美在线一二三| 中文字幕一区二区三区乱码在线| 老司机午夜精品99久久| 色激情天天射综合网| 国产日韩欧美麻豆| 奇米影视一区二区三区小说| 91黄色免费网站| 国产精品网友自拍| 麻豆免费精品视频| 欧美精品在线一区二区三区| 成人欧美一区二区三区| 国产精品白丝av| 日韩免费在线观看| 午夜天堂影视香蕉久久| 欧美影院一区二区三区| 亚洲欧美综合另类在线卡通| 国产一区二区免费看| 日韩欧美的一区二区| 亚洲第一狼人社区| 欧美午夜精品久久久久久孕妇| 综合av第一页| 91麻豆swag| 最新不卡av在线| hitomi一区二区三区精品| 久久综合九色综合欧美就去吻 | 亚洲福利视频一区| 欧洲精品一区二区三区在线观看| 日韩国产欧美在线观看| 欧美在线观看视频一区二区三区|