home *** CD-ROM | disk | FTP | other *** search
/ CD Shareware Magazine 1996 December / CD_shareware_12-96.iso / WIN / Programa / PXREST.ZIP / TBLOPEN.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1996-04-29  |  1.5 KB  |  73 lines

  1. unit tblopen;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   StdCtrls, FileCtrl, DB, BDE;
  8.  
  9. type
  10.   TTableOpenDlg = class(TForm)
  11.     DirLb: TDirectoryListBox;
  12.     DrvCb: TDriveComboBox;
  13.     FileLb: TFileListBox;
  14.     Label1: TLabel;
  15.     Label2: TLabel;
  16.     AliasCb: TComboBox;
  17.     procedure DirLbChange(Sender: TObject);
  18.     procedure FormShow(Sender: TObject);
  19.     procedure FileLbDblClick(Sender: TObject);
  20.     procedure AliasCbChange(Sender: TObject);
  21.   private
  22.     { Private declarations }
  23.   public
  24.     { Public declarations }
  25.   end;
  26.  
  27. var
  28.   TableOpenDlg: TTableOpenDlg;
  29.  
  30. implementation
  31.  
  32. {$R *.DFM}
  33.  
  34. procedure TTableOpenDlg.DirLbChange(Sender: TObject);
  35. begin
  36.   FileLb.Directory := DirLb.Directory;
  37. end;
  38.  
  39. procedure TTableOpenDlg.FormShow(Sender: TObject);
  40. begin
  41. //  ModalResult := mrCancel;
  42.   session.GetAliasNames(AliasCb.Items);
  43. end;
  44.  
  45. procedure TTableOpenDlg.FileLbDblClick(Sender: TObject);
  46. begin
  47.   ModalResult := mrOk;
  48. end;
  49.  
  50. procedure TTableOpenDlg.AliasCbChange(Sender: TObject);
  51. var
  52.   Desc: DBDesc;
  53.   Directory, FileName: string;
  54.   Drive: char;
  55.  
  56. begin
  57.   Check(DbiGetDatabaseDesc(PChar(AliasCb.Text), @Desc));
  58.   if StrComp(Desc.szDbType, 'STANDARD') <> 0 then
  59.     ShowMessage('Alias must be of STANDARD type')
  60.   else
  61.   begin
  62.     FileName := Desc.szPhyName;
  63.     Drive := FileName[1];
  64.     Directory := ExtractFilePath(FileName);
  65.  
  66.     DrvCb.Drive := Drive;
  67.     DirLb.Directory := Directory;
  68.     FileLb.FileName := FileName;
  69.   end;
  70. end;
  71.  
  72. end.
  73.