2011-09-23 64 views

回答

3

可以使用TShape組件的畫布屬性來繪製數,訪問此受保護的財產,你必須創建派生類T形,併發布該屬性或只使用一個interposer class

type 
    TShape = class(ExtCtrls.TShape); //interposer class 

    TForm1 = class(TForm) 
    Shape1: TShape; 
    Button1: TButton; 
    procedure Button1Click(Sender: TObject); 
    private 
    public 
    end; 

var 
    Form1: TForm1; 

implementation 

{$R *.dfm} 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
    Shape1.Canvas.Font.Name :='Arial';// set the font 
    Shape1.Canvas.Font.Size :=20;//set the size of the font 
    Shape1.Canvas.Font.Color:=clBlue;//set the color of the text 
    Shape1.Canvas.TextOut(10,10,'1999'); 
end; 
+0

嗨RRUK ...我沒有得到TShape的Canvas屬性。是那個屬性可用..? – rakesh

+0

請仔細閱讀答案,畫布是一個受保護的屬性,在示例代碼中檢查此行TShape = class(ExtCtrls.TShape);''。 – RRUZ

+0

我完全沒有讀完抱歉......感謝您的建議。 :) – rakesh

1

將它上面的的TLabel並使其背景透明(透明=真)。如果編輯文本對齊需要(陣營:= taCenter)

相關問題