首页  编辑  

Cards.dll使用

Tags: /超级猛料/DLL.动态链接库/第三方DLL及其接口/   Date Created:
unit Unt_Cards;

{ CARDS.DLL - Card Display Technology }
{ notes:
  copy from newgroup Author: Jeroen Pluimers (jeroenp@dragons.nest.nl)
  - CARDS.DLL is 16-bit in Win95!
}
interface

uses
    WinTypes;

const
    idClubsAce = 1;
    idClubs2 = 2;
    idClubs3 = 3;
    idClubs4 = 4;
    idClubs5 = 5;
    idClubs6 = 6;
    idClubs7 = 7;
    idClubs8 = 8;
    idClubs9 = 9;
    idClubs10 = 10;
    idClubsJack = 11;
    idClubsQueen = 12;
    idClubsKing = 13;
    idDiamondsAce = 14;
    idDiamonds2 = 15;
    idDiamonds3 = 16;
    idDiamonds4 = 17;
    idDiamonds5 = 18;
    idDiamonds6 = 19;
    idDiamonds7 = 20;
    idDiamonds8 = 21;
    idDiamonds9 = 22;
    idDiamonds10 = 23;
    idDiamondsJack = 24;
    idDiamondsQueen = 25;
    idDiamondsKing = 26;
    idHeartsAce = 27;
    idHearts2 = 28;
    idHearts3 = 29;
    idHearts4 = 30;
    idHearts5 = 31;
    idHearts6 = 32;
    idHearts7 = 33;
    idHearts8 = 34;
    idHearts9 = 35;
    idHearts10 = 36;
    idHeartsJack = 37;
    idHeartsQueen = 38;
    idHeartsKing = 39;
    idSpadesAce = 40;
    idSpades2 = 41;
    idSpades3 = 42;
    idSpades4 = 43;
    idSpades5 = 44;
    idSpades6 = 45;
    idSpades7 = 46;
    idSpades8 = 47;
    idSpades9 = 48;
    idSpades10 = 49;
    idSpadesJack = 50;
    idSpadesQueen = 51;
    idSpadesKing = 52;
    RankFirst = idClubsAce;
    RankLast = idClubsKing;
    RankCount = RankLast - RankFirst + 1;
    idFaceFirst = idClubsAce;
    idFaceLast = idSpadesKing;
    FaceCount = idFaceLast - idFaceFirst;
    SuitCount = 4;
    idDeckEmpty = 53; { $35 }
    idDeckPattern1 = 54; { $36 }
    idDeckPattern2 = 55; { $37 }
    idDeckRobot = 56; { $38 }
    idDeckRoses = 57; { $39 }
    idDeckFlowers1 = 58; { $3A }
    idDeckFlowers2 = 59; { $3B }
    idDeckFishes = 60; { $3C }
    idDeckAquarium = 61; { $3D }
    idDeckShell = 62; { $3E }
    idDeckCastle = 63; { $3F }
    idDeckPalmbeach = 64; { $40 }
    idDeckCardhand = 65; { $41 }
    { there is no card# 66 }
    idDeckCross = 67; { $43 }
    idDeckCircle = 68; { $44 }
    idDeckFirst = idDeckEmpty;
    idDeckLast = idDeckCardhand;
    DeckCount = idDeckLast - idDeckFirst + 1;
    idDeckSpecialFirst = idDeckCross;
    idDeckSpecialLast = idDeckCircle;
    DeckSpecialCount = idDeckSpecialLast - idDeckSpecialFirst + 1;
    idAnimateCardhand1 = 678; { $02A6 }
    idAnimateCardhand2 = 679; { $02A7 }
    idAnimateCastle = 680; { $02A8 }
    idAnimateSunSmile = 681; { $02A9 }
    idAnimateSunSmileTongue = 682; { $02AA }
    idAnimateRobot1 = 683; { $02AB }
    idAnimateRobot2 = 684; { $02AC }

type
    TCardId = Cardinal; { Win32 - 31-bit unsigned integer
      Win16 - 16-bit unsigned integer }
    TCardMode = Cardinal; { Win32 - 31-bit unsigned integer
      Win16 - 16-bit unsigned integer }
    TCoordinate = Integer; { Win32 - 32-bit signed integer
      Win16 - 16-bit signed integer }
function cdtInit(var CardWidth, CardHeight: TCoordinate): Bool; {$IFDEF
WIN32} stdcall; {$ENDIF Win32}
function cdtDraw(aDC: HDC; X, Y: TCoordinate; Card: TCardId; Mode: TCardMode; Color: TColorRef): Bool;
{$IFDEF Win32} stdcall; {$ENDIF
WIN32}
function cdtDrawExt(aDC: HDC; X, Y, Width, Height: TCoordinate; Card: TCardId; Mode: TCardMode; Color: TColorRef): Bool;
{$IFDEF Win32} stdcall; {$ENDIF
WIN32}
procedure cdtTerm; {$IFDEF Win32} stdcall; {$ENDIF Win32}
function cdtAnimate(aDC: HDC; Card: TCardId; X, Y: TCoordinate; AnimateIndex: Word): Bool; {$IFDEF Win32} stdcall;
{$ENDIF Win32}

implementation

const
{$IFDEF win32}
    sCardsDLL = 'CARDS.DLL';
{$ELSE}
    sCardsDLL = 'CARDS';
{$ENDIF win32}
{$IFDEF win32}
function cdtInit; external sCardsDLL name 'cdtInit';
function cdtDraw; external sCardsDLL name 'cdtDraw';
function cdtDrawExt; external sCardsDLL name 'cdtDrawExt';
procedure cdtTerm; external sCardsDLL name 'cdtTerm';
function cdtAnimate; external sCardsDLL name 'cdtAnimate';
{$ELSE}
function cdtInit; external sCardsDLL index 1;
function cdtDraw; external sCardsDLL index 2;
function cdtDrawExt; external sCardsDLL index 3;
procedure cdtTerm; external sCardsDLL index 4;
function cdtAnimate; external sCardsDLL index 5;
{$ENDIF win32}

end.