纸牌控件的编写(上)
2006-02-04 13:47:21 来源:WEB开发网使用了系统自带的纸牌库,无需任何资源,具有边角圆滑的效果,支持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 }
更多精彩
赞助商链接