Cards.dll主要函数的用法:
cdtInit proc lpdwCardWidth:DWORD, lpdwCardHeight:DWORD
lpdwCardWidth 返回扑克的宽度
lpdwCardHeight 返回扑克的高度
cdtDraw proc hDC:DWORD, dwX:DWORD, dwY:DWORD, cd:DWORD, md:DWORD, rgbBkgnd:DWORD
cdtDrawExt proc hDC:DWORD, dwX:DWORD, dwY:DWORD, dwdx:DWORD, dwdy:DWORD, cd:DWORD, md:DWORD, rgbBkgnd:DWORD
hDC 设备句柄
dwX 左上角的位置的横坐标
dwY 左上角的位置的纵坐标
cd 指出绘制哪一张扑克,或哪一个背景,具体对应的序号可以参考例子代码中的 Cards.inc 文件
md 绘制方式,有以下几种
mdFace EQU 0 ;绘制各种花色扑克
mdBackground EQU 1 ;绘制各种背景
mdHilite EQU 2 ;反色绘制各种花色扑克,不支持反色背景
mdGhost EQU 3 ;绘制网格图
mdRemove EQU 4 ;采用背景颜色绘制一个扑克大小的矩形
mdInvisibleGhost EQU 5 ;绘制网格图
mdDeckX EQU 6 ;绘制 X 图
mdDeckO EQU 7 ;绘制 O 图
rgbBk 绘制背景时的背景颜色
dwdx 绘制放大的或缩小的扑克时的宽度
dwdy 绘制放大的或缩小的扑克时的高度
起初用时, 无论如何画不出扑克, 各种参数设置都没有问题。查找网上资料也一无所获。最终发现一个纸牌控件的initialization有一句是cdtInit(CardWidth,CardHeight);加上后,显示正常。。。。。原来CardInit不光是返回扑克高度宽度值,也起到初始化的作用。。。