在显示图片时,再用Canvas重画一下,移位!就会有动感及阴影的效果!

解决方案 »

  1.   

    procedure DoDrawShadowText(ColorHigh,ColorLow: TColor;Rect: TRect;
      SH: Byte;Text: String;BevelState: TPanelText3DBevel;Flags: Word;AFont: TFont);
    var
      R: TRect;
    begin
      {High shadow text}
      if BevelState <> bvShadow3 then
      begin
        R:=Rect;
        OffsetRect(R,-SH,-SH);
        Canvas.Font.Color:=ColorHigh;
        if Enabled then
          DrawText(Canvas.Handle,PChar(Text),Length(Text),R,Flags);
      end;
      R:=Rect;
      OffsetRect(R,SH,SH);
      Canvas.Font.Color:=ColorLow;
      DrawText(Canvas.Handle,PChar(Text),Length(Text),R,Flags);
      {Text}
      Canvas.Font:=AFont;
      if not Enabled then Canvas.Font.Color:=clGrayText;
      DrawText(Canvas.Handle,PChar(Text),Length(Text),Rect,Flags);
    end;一个在画布上花带阴影字的函数!你也真够可以的,怎么简单的代码,告诉了你原理(而且XPMenu也有现成的代码),自己不愿多想想!就知道要现成的!
      

  2.   

    我有直接画XP菜单效果的代码,需要我可以给你Demo.