home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 February / Chip_2004-02_cd1.bin / program / delphi / navody / d56 / ec1vr2.exe / #setuppath# / Delphi / Biolife / Main.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  2003-12-09  |  3.6 KB  |  139 lines

  1. unit Main;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   vivrep20, Menus, DBCtrls, StdCtrls, Grids, DBGrids, Buttons, ExtCtrls;
  8.  
  9. type
  10.   TMainForm = class(TForm)
  11.     MainMenu: TMainMenu;
  12.     PrintItem: TMenuItem;
  13.     PrintSetupItem: TMenuItem;
  14.     ExitItem: TMenuItem;
  15.     AboutItem: TMenuItem;
  16.     SpeedBar: TPanel;
  17.     SpeedButton1: TSpeedButton;  // &Print...
  18.     SpeedButton2: TSpeedButton;  // P&rint Setup...
  19.     SpeedButton3: TSpeedButton;  // E&xit
  20.     SpeedButton4: TSpeedButton;  // &About...
  21.     PrintPreviewItem: TMenuItem;
  22.     SpeedButton5: TSpeedButton;
  23.     Grid: TDBGrid;
  24.     Memo: TDBMemo;
  25.     DBImage1: TDBImage;
  26.     CurPrintItem: TMenuItem;
  27.     AllPrintItem: TMenuItem;
  28.     AllInGridItem: TMenuItem;
  29.     PrevCurrentItem: TMenuItem;
  30.     PrevAllItem: TMenuItem;
  31.     PrevAllInGridItem: TMenuItem;
  32.     VRPrintProgress: TVRPrintProgress;
  33.     VRPreview: TVRPreview;
  34.         PrevSelectedItem: TMenuItem;
  35.         PrevSelectedInGridItem: TMenuItem;
  36.  
  37.     procedure PrintSetup(Sender: TObject);
  38.     procedure Exit(Sender: TObject);
  39.     procedure About(Sender: TObject);
  40.     procedure AllPrint(Sender: TObject);
  41.     procedure CurPrint(Sender: TObject);
  42.     procedure AllInGrid(Sender: TObject);
  43.     procedure PrevCurrent(Sender: TObject);
  44.     procedure PrevAll(Sender: TObject);
  45.     procedure PrevAllInGrid(Sender: TObject);
  46.     procedure PrevSelectedItemClick(Sender: TObject);
  47.     procedure PrevSelectedInGridItemClick(Sender: TObject);
  48.   private
  49.     { Private declarations }
  50.   public
  51.     { Public declarations }
  52.   end;
  53.  
  54. var
  55.   MainForm: TMainForm;
  56.  
  57. implementation
  58.  
  59. uses About, RepGrid, Rep, dm;
  60.  
  61. {$R *.DFM}
  62.  
  63. procedure TMainForm.PrintSetup(Sender: TObject);
  64. begin
  65.   RepForm.VividReport.PrinterSetup;
  66. end;
  67.  
  68. procedure TMainForm.Exit(Sender: TObject);
  69. begin
  70.   Close;
  71. end;
  72.  
  73. procedure TMainForm.About(Sender: TObject);
  74. begin
  75.   AboutBox.ShowModal;
  76. end;
  77.  
  78. procedure TMainForm.AllPrint(Sender: TObject);
  79. begin
  80.   RepForm.VividReport.OnBeforePrint := NIL;
  81.   if RepForm.VividReport.PrintSetup then RepForm.VividReport.Print;
  82.   RepForm.VividReport.OnBeforePrint := RepForm.VividReportBeforePrint;
  83. end;
  84.  
  85. procedure TMainForm.CurPrint(Sender: TObject);
  86. begin
  87.   RepForm.VividReport.DataSource := NIL;
  88.   try
  89.     BioLifeDM.RepTable.GotoCurrent (BioLifeDM.ViewTable);
  90.     AllPrint (NIL);
  91.   finally
  92.     RepForm.VividReport.DataSource := BioLifeDM.RepDSource;
  93.   end;
  94. end;
  95.  
  96. procedure TMainForm.AllInGrid(Sender: TObject);
  97. begin
  98.   RepGridForm.VRGrid.Rows.Items[1].OnBeforePrint := NIL;
  99.   if RepGridForm.VividReport.PrintSetup then RepGridForm.VividReport.Print;
  100.   RepGridForm.VRGrid.Rows.Items[1].OnBeforePrint := RepGridForm.VRGridRows1BeforePrint;
  101. end;
  102.  
  103. procedure TMainForm.PrevCurrent(Sender: TObject);
  104. begin
  105.   RepForm.VividReport.DataSource := NIL;
  106.   try
  107.     BioLifeDM.RepTable.GotoCurrent (BioLifeDM.ViewTable);
  108.     PrevAll (NIL);
  109.   finally
  110.     RepForm.VividReport.DataSource := BioLifeDM.RepDSource;
  111.   end;
  112. end;
  113.  
  114. procedure TMainForm.PrevAll(Sender: TObject);
  115. begin
  116.   RepForm.VividReport.OnBeforePrint := NIL;
  117.   RepForm.VividReport.PrintPreview (VRPreview);
  118.   RepForm.VividReport.OnBeforePrint := RepForm.VividReportBeforePrint;
  119. end;
  120.  
  121. procedure TMainForm.PrevAllInGrid(Sender: TObject);
  122. begin
  123.   RepGridForm.VRGrid.Rows.Items[1].OnBeforePrint := NIL;
  124.   RepGridForm.VividReport.PrintPreview (VRPreview);
  125.   RepGridForm.VRGrid.Rows.Items[1].OnBeforePrint := RepGridForm.VRGridRows1BeforePrint;
  126. end;
  127.  
  128. procedure TMainForm.PrevSelectedItemClick(Sender: TObject);
  129. begin
  130.   RepForm.VividReport.PrintPreview (VRPreview);
  131. end;
  132.  
  133. procedure TMainForm.PrevSelectedInGridItemClick(Sender: TObject);
  134. begin
  135.   RepGridForm.VividReport.PrintPreview (VRPreview);
  136. end;
  137.  
  138. end.
  139.