Marco Web Center |
Home: Code Repository: Mastering Delphi 5Project CALLCPP
Project StructureCALLCPP.DPRprogram Callcpp; uses Forms, CallCppF in 'CallCppF.pas' {Form1}; {$R *.RES} begin Application.CreateForm(TForm1, Form1); Application.Run; end. CALLCPPF.PASunit CallCppF; interface uses SysUtils, Windows, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Spin, ExtCtrls; type TForm1 = class(TForm) BtnDouble: TButton; SpinEdit1: TSpinEdit; Label1: TLabel; BtnTriple: TButton; Label2: TLabel; SpinEdit2: TSpinEdit; BtnAdd: TButton; Label3: TLabel; Edit1: TEdit; Bevel1: TBevel; procedure BtnDoubleClick(Sender: TObject); procedure BtnTripleClick(Sender: TObject); procedure BtnAddClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} {definition of the functions of the DLL} function Add (A, B: Integer): Integer; stdcall; external 'CPPDLL.DLL' name '@Add$qqsii'; function Double (N: Integer): Integer; stdcall; external 'CPPDLL.DLL' name 'Double'; function Triple (N: Integer): Integer; stdcall; external 'CPPDLL.DLL'; procedure TForm1.BtnDoubleClick(Sender: TObject); begin SpinEdit1.Value := Double (SpinEdit1.Value); end; procedure TForm1.BtnTripleClick(Sender: TObject); begin SpinEdit2.Value := Triple (SpinEdit2.Value); end; procedure TForm1.BtnAddClick(Sender: TObject); begin Edit1.Text := IntToStr (Add ( SpinEdit1.Value, SpinEdit2.Value)); end; end. CALLCPPF.DFMobject Form1: TForm1 Left = 205 Top = 166 Width = 371 Height = 190 Caption = 'Call C++ DLL' Font.Charset = DEFAULT_CHARSET Font.Color = clBlack Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] PixelsPerInch = 96 TextHeight = 13 object Label1: TLabel Left = 176 Top = 24 Width = 30 Height = 13 Caption = 'Value:' end object Label2: TLabel Left = 176 Top = 64 Width = 30 Height = 13 Caption = 'Value:' end object Label3: TLabel Left = 176 Top = 120 Width = 27 Height = 13 Caption = 'Total:' end object Bevel1: TBevel Left = 168 Top = 96 Width = 161 Height = 9 Shape = bsTopLine end object BtnDouble: TButton Left = 40 Top = 16 Width = 89 Height = 33 Caption = 'Double' TabOrder = 0 OnClick = BtnDoubleClick end object SpinEdit1: TSpinEdit Left = 232 Top = 20 Width = 81 Height = 22 MaxValue = 0 MinValue = 0 TabOrder = 1 Value = 10 end object BtnTriple: TButton Left = 40 Top = 56 Width = 89 Height = 33 Caption = 'Triple' TabOrder = 2 OnClick = BtnTripleClick end object SpinEdit2: TSpinEdit Left = 232 Top = 60 Width = 81 Height = 22 MaxValue = 0 MinValue = 0 TabOrder = 3 Value = 10 end object BtnAdd: TButton Left = 40 Top = 112 Width = 89 Height = 33 Caption = 'Add' TabOrder = 4 OnClick = BtnAddClick end object Edit1: TEdit Left = 232 Top = 116 Width = 79 Height = 21 ReadOnly = True TabOrder = 5 end end
|
||
© Copyright Marco Cantù, 1995-2020, All rights reserved |