亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
亚洲精品视频在线看| 国产精品1024| 国产精品一区二区你懂的| 99久久久精品| 精品三级在线观看| 亚洲最色的网站| 成人黄色小视频| 日韩欧美三级在线| 亚洲一级二级在线| 成人性色生活片| 久久综合九色综合久久久精品综合| 一区二区高清视频在线观看| 国产精品一区二区久激情瑜伽 | 一区二区三区四区国产精品| 久久91精品久久久久久秒播| 欧美性欧美巨大黑白大战| 国产色91在线| 日韩成人一级大片| 精品视频色一区| 亚洲色图欧洲色图| av中文一区二区三区| 久久久久久久久久久99999| 蜜桃av一区二区三区| 欧美日韩你懂得| 亚洲午夜影视影院在线观看| 色婷婷亚洲精品| 亚洲免费观看高清完整版在线观看 | 国产精品国产三级国产普通话蜜臀 | 26uuu国产一区二区三区| 天天综合网 天天综合色| 色视频欧美一区二区三区| 国产精品女主播在线观看| 国产精品一级二级三级| 久久久噜噜噜久久中文字幕色伊伊| 久久97超碰国产精品超碰| 精品少妇一区二区三区视频免付费 | 亚洲国产精品一区二区www在线| 91美女片黄在线观看91美女| 亚洲欧洲日产国产综合网| 成人av资源下载| 国产精品乱码一区二三区小蝌蚪| 国产一区二区看久久| 国产日韩欧美高清| 成人av电影在线观看| 中文字幕在线观看一区二区| 91丨九色丨国产丨porny| 亚洲免费在线电影| 欧美日韩免费电影| 久久精品国产99久久6| 久久色中文字幕| 成人美女视频在线观看| 亚洲精品国产成人久久av盗摄| 在线免费不卡电影| 日韩电影免费一区| 久久中文字幕电影| 92精品国产成人观看免费| 亚洲国产一区二区三区青草影视| 88在线观看91蜜桃国自产| 国产乱妇无码大片在线观看| 国产精品国产成人国产三级| 欧美日韩日日摸| 国产精品亚洲一区二区三区在线 | 久久久www免费人成精品| 粉嫩aⅴ一区二区三区四区| 一区二区三区免费观看| 日韩午夜激情视频| 成人av免费在线观看| 亚洲成a人v欧美综合天堂下载| 精品福利视频一区二区三区| av不卡在线播放| 麻豆精品久久久| 最新日韩av在线| 日韩精品一区二区三区swag| 91丨porny丨蝌蚪视频| 麻豆视频一区二区| 亚洲三级电影全部在线观看高清| 欧美无砖砖区免费| 国产成人精品免费在线| 亚洲第一成年网| 欧美精彩视频一区二区三区| 欧美午夜精品久久久久久超碰| 国产精品一区二区三区99| 天堂蜜桃91精品| 亚洲丝袜精品丝袜在线| 欧美成人艳星乳罩| 91久久精品一区二区| 国产高清精品网站| 日韩精品五月天| 亚洲综合激情网| 中文字幕一区二区视频| 日韩美女主播在线视频一区二区三区| av电影天堂一区二区在线| 久久精品国产一区二区三区免费看| 亚洲日本在线a| 久久久久久久网| 日韩一卡二卡三卡四卡| 在线视频国内自拍亚洲视频| 粉嫩绯色av一区二区在线观看| 久久99这里只有精品| 视频一区视频二区中文| 亚洲综合偷拍欧美一区色| 中文字幕一区二区不卡 | 不卡视频在线观看| 精品制服美女丁香| 五月综合激情网| 一区二区在线电影| 日韩美女视频一区二区| 久久久久国产免费免费| www国产成人免费观看视频 深夜成人网| 欧美亚洲禁片免费| 91激情五月电影| 91福利社在线观看| 91福利国产精品| 欧美日免费三级在线| 欧美中文字幕久久| 欧美日韩日日摸| 日韩视频123| 欧美不卡在线视频| 日韩精品一区二区三区中文不卡| 9191国产精品| 日韩一区二区中文字幕| 91超碰这里只有精品国产| 9191国产精品| 欧美mv日韩mv国产网站app| 久久先锋资源网| 国产亚洲精品bt天堂精选| 国产亚洲欧美在线| 中文字幕一区二区视频| 一区二区三区影院| 亚洲v精品v日韩v欧美v专区| 欧美a级理论片| 国产伦精品一区二区三区在线观看 | 日韩精品一区二区三区视频播放| 精品国产乱码91久久久久久网站| 久久亚洲精品小早川怜子| 国产日韩欧美制服另类| 国产精品国产三级国产普通话三级| 亚洲精品伦理在线| 婷婷综合五月天| 亚洲精品国产无套在线观| 久久久久久97三级| 欧美极品另类videosde| 亚洲国产婷婷综合在线精品| 国产欧美一区二区三区在线看蜜臀 | 91久久精品网| 91久久精品网| 精品剧情在线观看| 国产亚洲美州欧州综合国| 欧美一区二区三区视频在线观看| 99精品黄色片免费大全| 欧洲国产伦久久久久久久| 欧美一级视频精品观看| 久久精品亚洲精品国产欧美kt∨ | 色婷婷久久久综合中文字幕| 欧美丰满少妇xxxxx高潮对白| 久久只精品国产| 一二三四社区欧美黄| 国内精品久久久久影院一蜜桃| 99久久99久久精品免费看蜜桃| 欧美日韩一区二区欧美激情| 久久精品一区二区三区不卡牛牛| 亚洲综合自拍偷拍| 国产精品一级片在线观看| 精品视频在线看| 国产精品水嫩水嫩| 久久精品国产999大香线蕉| 色综合中文字幕国产 | 国产欧美久久久精品影院| 亚洲高清不卡在线| 懂色av一区二区夜夜嗨| 7777精品伊人久久久大香线蕉超级流畅| 精品国产91久久久久久久妲己| 亚洲午夜国产一区99re久久| 国产高清亚洲一区| 精品免费视频一区二区| 亚洲国产另类精品专区| 97精品国产露脸对白| 久久久综合精品| 人人狠狠综合久久亚洲| 欧美性猛交xxxxxx富婆| 国产精品久久久久aaaa| 国内精品在线播放| 欧美一区二区美女| 五月婷婷久久丁香| 在线观看免费一区| 亚洲人成网站色在线观看| 成人h精品动漫一区二区三区| 久久婷婷久久一区二区三区| 麻豆传媒一区二区三区| 欧美喷潮久久久xxxxx| 亚洲国产一区二区三区青草影视| 91免费在线视频观看| 国产精品妹子av| 国产麻豆精品theporn| 久久网站最新地址| 国产电影一区二区三区| 2022国产精品视频| 韩国成人福利片在线播放| 日韩精品一区二区三区蜜臀 | 日本不卡一区二区|