如题:
我想在Tlabel控件的Caption里显示版权符号,怎样实现呢?

解决方案 »

  1.   

    在word中输入,复制后再在delphi里粘贴即可。
      

  2.   

    楼主参考下这贴,好像只能D2010以上才可以,D7只有瞪眼的份了。
    http://topic.csdn.net/t/20020520/13/736824.html
      

  3.   

    用画图工具制作一个版权符号图片,然后用TImage加载。我就是这么干的!
      

  4.   

    d2009之前不支持unicode,可以用第三方基于unicode的组件来实现,d2009及以后就直接支持了。
      

  5.   

    TNT,   D7 确实不行.
      

  6.   

    用图片,包括什么CopyRight,日期之类的,都制成一张图片
      

  7.   


    Type
      TCopyRightLabel = Class(TGraphicControl)
      protected
        procedure Paint; override;
      end;procedure TCopyRightLabel.Paint;
    var
      CC : DWORD;
      Rect : TRect;
    begin
      CC := $A9;
      Rect := ClientRect;
      Canvas.Brush.Style := bsClear;
      DrawTextW(Canvas.Handle , @CC , 1 , Rect , DT_EXPANDTABS);
    end;procedure TForm1.FormCreate(Sender: TObject);
    var
      CL : TCopyRightLabel;
    begin
      Label1.Caption := '版权信息:xxx';
      CL        := TCopyRightLabel.Create(Self);
      CL.Left   := Label1.Left + Label1.Width;
      CL.Top    := Label1.Top - 2;
      CL.Parent := Self;
      CL.Width  := Label1.Canvas.TextWidth('AA');
      CL.Height := Label1.Height;
      CL.Font.Assign(Self.Font);
    end;在Label1后面加了一个©标记,如果想加®,把$A9改成$AE即可
    方法很多,原理就是构造一个调用TextOutW或者DrawTextW的环境就行了
      

  8.   

    试了下,d7 下 TMS unicode 组件的 label 可以在属性栏中帖入© 这些特殊字符,当然在IDE 编辑框中就是乱码?。
      

  9.   


    procedure TCopyRightLabel.Paint;
    var
      CC : DWORD;
      Rect : TRect;
    begin
      CC := $A9;
      Rect := ClientRect;
      Canvas.Brush.Style := bsClear;
      canvas.Font.Name :='宋体';
      canvas.Font.Size :=18;//字体和大小都可以设置的
      DrawTextW(Canvas.Handle , @CC , 1 , Rect , DT_LEFT);
    end;
      

  10.   

    超大吧。
    注意这句代码,要给它留出足够的空间。
    CL.Width  := Label1.Canvas.TextWidth('AA');//多来几个AAAA就可以了。 
      

  11.   

    D7下加个强制类型转换
    DrawTextW(Canvas.Handle , pWidechar(@CC) , 1 , Rect , DT_LEFT);