纸牌控件的编写(上)

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

使用了系统自带的纸牌库,无需任何资源,具有边角圆滑的效果,支持Windows 98、Windows 2000系统。

效果如下图:

还具有自定义图象功能,如下图所示:

unit ZFPlayCard;

{

2003.11.27

xzhifei

}

interface

uses

Windows, WinTypes, Messages, SysUtils, Classes, Controls, Graphics;

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 = (mode1, mode2, mode3, mode4, mode5, mode6, mode7, mode8, mode9);

{ Win32 - 31-bit unsigned integer

Win16 - 16-bit unsigned integer }

TCoordinate = Integer; { Win32 - 32-bit signed integer

Win16 - 16-bit signed integer }

未完,请看下一章。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航