home *** CD-ROM | disk | FTP | other *** search
- unit main;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls, MultiTwain, ExtCtrls, Buttons;
-
- type
- TForm1 = class(TForm)
- Button1: TButton;
- Image1: TImage;
- BitBtn1: TBitBtn;
- BitBtn2: TBitBtn;
- Image2: TImage;
- procedure FormCreate(Sender: TObject);
- procedure Button1Click(Sender: TObject);
- procedure BitBtn1Click(Sender: TObject);
- procedure BitBtn2Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- hdib, testdib: hbitmap;
- w, h: integer;
- n: Integer;
- end;
-
- var
- Form1: TForm1;
-
- procedure CallbackFxn(CurDib: THandle; index: Integer); stdcall; forward;
-
- implementation
-
- {$R *.DFM}
-
- procedure TForm1.FormCreate(Sender: TObject);
-
- begin
- hDib := 0;
- w := 0; h := 0;
- testDib := 0;
- TWAIN_RegisterCallback(CallbackFxn);
- end;
-
- procedure TForm1.Button1Click(Sender: TObject);
-
- begin
- TWAIN_SelectImageSource(0);
- hdib := TWAIN_AcquireNative(0, 0);
- n := TWAIN_GetNumDibs;
- if n >= 1 then
- begin
- TestDib := TWAIN_GetDib(0);
- CopyDibIntoImage(TestDib, Image1);
- TWAIN_FreeNative(TestDib);
- TestDib := 0;
- end;
- if n = 2 then
- begin
- TestDib := TWAIN_GetDib(1);
- CopyDibIntoImage(TestDib, Image2);
- TWAIN_FreeNative(TestDib);
- TestDib := 0;
- end;
-
- end;
-
- procedure TForm1.BitBtn1Click(Sender: TObject);
- begin
- Image1.Visible := False;
- image1.Top := 0;
- Image1.Left := 0;
- Image1.Width := ClientWidth;
- Image1.Height := ClientHeight;
- Image1.Visible := True;
- end;
-
- procedure TForm1.BitBtn2Click(Sender: TObject);
- begin
- Image1.Visible := False;
- image1.Top := 100;
- Image1.Left := 50;
- Image1.Width := 150;
- Image1.Height := 150;
- Image1.Visible := True;
- end;
-
- procedure CallbackFxn(CurDib: THandle; index: Integer); stdcall;
- begin
- MessageBox(0, 'Called back!', 'CallbackFxn', mb_ok);
- end;
- end.
-