home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2002 March
/
Chip_2002-03_cd1.bin
/
zkuste
/
delphi
/
kompon
/
d5
/
SGSCAN.ZIP
/
main.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1998-07-15
|
2KB
|
95 lines
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.