今天图老师小编要跟大家分享纸牌控件的编写(下),精心挑选的过程简单易学,喜欢的朋友一起来学习吧!
【 tulaoshi.com - 编程语言 】
constructor TZFPlayCard.Create(AOwner: TComponent);?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
var
x, y: integer;
begin
inherited Create(AOwner);
FCardId := 1;
cdtInit(x, y);
SetBounds(0, 0, x, y);
ControlStyle := [csClickEvents, csDoubleClicks];
Enabled := True;
Canvas.Brush.Style := bsClear;
FGlyph := TBitMap.Create;
end;
destructor TZFPlayCard.Destroy;
begin
FGlyph.Free;
inherited;
end;
procedure TZFPlayCard.Paint;
begin
inherited;
ReDraw;
end;
procedure TZFPlayCard.ReDraw;
begin
cdtDraw(Canvas.Handle, 0, 0, FCardId, Ord(FCardMode), clWhite);
if FGlyph nil then
begin
canvas.StretchDraw(RECT(12, 11, 59, 85), FGlyph);
end;
end;
procedure TZFPlayCard.SetCardId(const Value: TCardId);
begin
FCardId := Value;
ReDraw;
end;
procedure TZFPlayCard.SetCardMode(const Value: TCardMode);
begin
FCardMode := Value;
ReDraw;
end;
procedure TZFPlayCard.SetGlyph(const Value: TBitMap);
begin
if value FGlyph then
begin
FGlyph.Assign(value);
Invalidate;
end;
end;
procedure TZFPlayCard.WMEraseBkgnd(var Message: TWMEraseBkgnd);
begin
Message.Result:=1;
end;
end.
来源:http://www.tulaoshi.com/n/20160219/1601324.html