home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / delphi / cbsuite.lzh / SU1SRC.ZIP / UNIT01.PAS < prev    next >
Pascal/Delphi Source File  |  1996-12-30  |  4KB  |  153 lines

  1. unit unit01;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, StdCtrls, Cb_Graph, Cb_lab, Buttons, ExtCtrls, Tabs,
  8.   Grids, DBGrids, DB, DBTables, Cb_dbgr, PrnWin, DBPrnWin, Cb_grid,
  9.   PrnGridR, CB_MFunc, CB3Party;
  10.  
  11. type
  12.   TCBDemo01 = class(TForm)
  13.     Notebook1: TNotebook;
  14.     BitBtn1: TBitBtn;
  15.     DataSource1: TDataSource;
  16.     DBPrintWin1: TDBPrintWin;
  17.     PrintGridReport1: TPrintGridReport;
  18.     Memo1: TMemo;
  19.     Query1: TQuery;
  20.     Query1SYMBOL: TStringField;
  21.     Query1CUR_PRICE: TFloatField;
  22.     Query1YRL_HIGH: TFloatField;
  23.     Query1YRL_LOW: TFloatField;
  24.     Query1P_E_RATIO: TFloatField;
  25.     Query1BETA: TFloatField;
  26.     Query1PROJ_GRTH: TFloatField;
  27.     ScrollBox1: TScrollBox;
  28.     CB_Label2: TCB_Label;
  29.     CB_DBGraph1: TCB_DBGraph;
  30.     CB_SortGrid1: TCB_SortGrid;
  31.     ComboBox2: TComboBox;
  32.     Label1: TLabel;
  33.     Button1: TButton;
  34.     Button2: TButton;
  35.     TabSet1: TTabSet;
  36.     Image1: TImage;
  37.     procedure FormCreate(Sender: TObject);
  38.     procedure TabSet1Click(Sender: TObject);
  39.     procedure ComboBox2Change(Sender: TObject);
  40.     procedure Button1Click(Sender: TObject);
  41.     procedure Button2Click(Sender: TObject);
  42.     procedure CB_SortGrid1AfterSort(Sender: TObject);
  43.     procedure BitBtn1Click(Sender: TObject);
  44.   private
  45.      procedure LoadTenValues;
  46.      procedure LoadTenValueNames;
  47.   public
  48.     { Public declarations }
  49.   end;
  50.  
  51. var
  52.   CBDemo01: TCBDemo01;
  53.  
  54. implementation
  55.  
  56. {$R *.DFM}
  57.  
  58.  
  59. procedure TCBDemo01.FormCreate(Sender: TObject);
  60. begin
  61.     CB_DBGraph1.GraphType := ctBar;
  62.     CB_DBGraph1.NValues := 10;
  63.    LoadTenValues;
  64.    LoadTenValueNames;
  65.     CB_DBGraph1.AdjustScale;
  66. end;
  67.  
  68. procedure TCBDemo01.LoadTenValues;
  69. begin
  70.    CB_DBGraph1.LoadSeries(1,Query1, Query1CUR_PRICE);
  71.    CB_DBGraph1.LoadSeries(2,Query1, Query1YRL_HIGH);
  72.    CB_DBGraph1.LoadSeries(3,Query1, Query1YRL_LOW);
  73.    CB_DBGraph1.LoadSeries(4,Query1, Query1P_E_RATIO);
  74.    CB_DBGraph1.LoadSeries(5,Query1, Query1BETA);
  75.    CB_DBGraph1.LoadSeries(6,Query1, Query1PROJ_GRTH);
  76. end;
  77.  
  78.  
  79. procedure TCBDemo01.TabSet1Click(Sender: TObject);
  80. begin
  81.     Notebook1.PageIndex := Tabset1.TabIndex;
  82. end;
  83.  
  84. procedure TCBDemo01.ComboBox2Change(Sender: TObject);
  85. begin
  86.     if ComboBox2.ItemIndex = 0 then
  87.         CB_DBGraph1.GraphType := ctBar;
  88.     if ComboBox2.ItemIndex = 1 then
  89.         CB_DBGraph1.GraphType := ctLine;
  90.     if ComboBox2.ItemIndex = 2 then
  91.         CB_DBGraph1.GraphType := ctPie;
  92.     if ComboBox2.ItemIndex = 3 then
  93.         CB_DBGraph1.GraphType := ctScatter;
  94.  
  95. end;
  96.  
  97. procedure TCBDemo01.Button1Click(Sender: TObject);
  98. begin
  99.     PrintGridReport1.Execute;
  100. end;
  101.  
  102. procedure TCBDemo01.Button2Click(Sender: TObject);
  103. begin
  104.     DBPrintWin1.BeginPrint;
  105.     DBPrintWin1.DrawWindowAt(1.5,2,ScrollBox1);
  106.     DBPrintWin1.EndPrint;
  107. end;
  108.  
  109. procedure TCBDemo01.CB_SortGrid1AfterSort(Sender: TObject);
  110. begin
  111.    CB_SortGrid1.Refresh;
  112.     LoadTenValues;
  113.     CB_DBGraph1.AdjustScale;
  114.    LoadTenValueNames;
  115.     CB_DBGraph1.Repaint;
  116. end;
  117.  
  118. { Loads the first 10 Value Names into the Graph
  119.   For this demo it is the Share Symbol }
  120. procedure TCBDemo01.LoadTenValueNames;
  121. var
  122.    i: integer;
  123.    MyBookmark: TBookmark;
  124. begin
  125.     with Query1 do begin
  126.         DisableControls;
  127.        MyBookmark := Query1.GetBookmark;
  128.  
  129.        First;
  130.        i := 0;
  131.           while not Eof do begin
  132.              if i = 10 then
  133.               Break;
  134.           CB_DBGraph1.ValueNames[i] := Query1SYMBOL.AsString;
  135.               Next;
  136.           Inc(i);
  137.        end;
  138.        GoToBookmark (MyBookmark);
  139.        FreeBookmark (MyBookmark);
  140.         
  141.        EnableControls;
  142.    end;
  143.    CB_SortGrid1.Refresh;
  144.  
  145. end;
  146.  
  147. procedure TCBDemo01.BitBtn1Click(Sender: TObject);
  148. begin
  149.     Close;
  150. end;
  151.  
  152. end.
  153.