home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sibdemo3.zip / SAMPLES.DAT / SAMPLES / DDECLI / DDECLIU1.PAS < prev   
Pascal/Delphi Source File  |  1997-11-29  |  3KB  |  113 lines

  1. Unit DDECliU1;
  2.           
  3. Interface
  4.  
  5. Uses
  6.   Classes, Forms, Graphics, StdCtrls, Buttons, DdeMan;
  7.  
  8. Type
  9.   TDDEClientForm = Class (TForm)
  10.     Label1: TLabel;
  11.     ConnectBtn: TBitBtn;
  12.     RequestBtn: TBitBtn;
  13.     PokeBtn: TBitBtn;
  14.     AdviseBtn: TBitBtn;
  15.     MacroBtn: TBitBtn;
  16.     Memo1: TMemo;
  17.     Label2: TLabel;
  18.     DdeClientConv1: TDdeClientConv;
  19.     DdeClientItem1: TDdeClientItem;
  20.     Procedure MacroBtnOnClick (Sender: TObject);
  21.     Procedure PokeBtnOnClick (Sender: TObject);
  22.     Procedure AdviseBtnOnClick (Sender: TObject);
  23.     Procedure DdeClientItem1OnChange (Sender: TObject);
  24.     Procedure RequestBtnOnClick (Sender: TObject);
  25.     Procedure DdeClientConv1OnClose (Sender: TObject);
  26.     Procedure DdeClientConv1OnOpen (Sender: TObject);
  27.     Procedure ConnectBtnOnClick (Sender: TObject);
  28.   Private
  29.     {Insert private declarations here}
  30.     FConnected:Boolean;
  31.     FAdviseMode:Boolean;
  32.   Public
  33.     {Insert public declarations here}
  34.   End;
  35.  
  36. Var
  37.   DDEClientForm: TDDEClientForm;
  38.  
  39. Implementation
  40.  
  41. Procedure TDDEClientForm.MacroBtnOnClick (Sender: TObject);
  42. Begin
  43.   DDEClientConv1.ExecuteMacro('Change Color',TRUE);
  44. End;
  45.  
  46. Procedure TDDEClientForm.PokeBtnOnClick (Sender: TObject);
  47. Begin
  48.   DDEClientItem1.Lines:=Memo1.Lines;
  49.   DDEClientItem1.Poke;
  50. End;
  51.  
  52. Procedure TDDEClientForm.AdviseBtnOnClick (Sender: TObject);
  53. Begin
  54.   If FAdviseMode Then
  55.   Begin
  56.      AdviseBtn.Caption:='~Advise';
  57.      DDEClientItem1.UnAdvise;
  58.      FAdviseMode:=False;
  59.   End
  60.   Else
  61.   Begin
  62.      AdviseBtn.Caption:='~Unadvise';
  63.      DDEClientItem1.Advise;
  64.      FAdviseMode:=True;
  65.   End;
  66. End;
  67.  
  68. Procedure TDDEClientForm.DdeClientItem1OnChange (Sender: TObject);
  69. Begin
  70.   Memo1.Lines:=DDEClientItem1.Lines;
  71. End;
  72.  
  73. Procedure TDDEClientForm.RequestBtnOnClick (Sender: TObject);
  74. Begin
  75.   DDEClientItem1.Request;
  76. End;
  77.  
  78. Procedure TDDEClientForm.DdeClientConv1OnClose (Sender: TObject);
  79. Begin
  80.   Caption:='DDE Client Sample (not connected)';
  81.   FConnected:=False;
  82.   ConnectBtn.Caption:='~Connect';
  83.   RequestBtn.Enabled:=False;
  84.   PokeBtn.Enabled:=False;
  85.   AdviseBtn.Enabled:=False;
  86.   FAdviseMode:=False;
  87.   AdviseBtn.Caption:='~Advise';
  88.   MacroBtn.Enabled:=False;
  89. End;
  90.  
  91. Procedure TDDEClientForm.DdeClientConv1OnOpen (Sender: TObject);
  92. Begin
  93.   Caption:='DDE Client Sample (connected to:'+
  94.            DDEClientConv1.DDEService+')';
  95.   FConnected:=True;
  96.   ConnectBtn.Caption:='~Disconnect';
  97.   RequestBtn.Enabled:=True;
  98.   PokeBtn.Enabled:=True;
  99.   AdviseBtn.Enabled:=True;
  100.   MacroBtn.Enabled:=True;
  101. End;
  102.         
  103. Procedure TDDEClientForm.ConnectBtnOnClick (Sender: TObject);
  104. Begin
  105.   If not FConnected Then DDEClientConv1.OpenLink
  106.   Else DDEClientConv1.CloseLink;
  107. End;
  108.  
  109. Initialization
  110.   RegisterClasses ([TDDEClientForm, TLabel, TBitBtn, TMemo, TDdeClientConv,
  111.                     TDdeClientItem]);
  112. End.
  113.